Author Topic: Side Project #2: DUNGEON  (Read 26370 times)

0 Members and 2 Guests are viewing this topic.

Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
Re: Side Project #2: DUNGEON
« Reply #75 on: May 11, 2009, 09:10:28 am »
Hmm looks like we lost a bit of posts. oh well.

As for progress, I have 75% of the maps designed, and 50% implemented. I have 3 of the 5 power ups implemented, as well as 2 of the 5 items. Hopefully I can finish designing the maps today or tomorrow and finish adding all of them into the game by the end of the week. Then i'll just have to add in the rest of the power ups and items, and it'll be testing time.
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Side Project #2: DUNGEON
« Reply #76 on: May 11, 2009, 10:41:51 am »
nice! I can't wait to test it. I have currently added a sword enemies and some magic. the sword will kill enemies, the enemies will move about and damage you (this slows down the game a bunch though) and the magic will suck health from the enemies (cool animation too). I'm in the middle of fixing the sword animation and planning some more items/powerups. I also found a good mapeditor that I'm using. when I get home I'll post the code so anybody who wants to can optimize it for me
/e

Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
Re: Side Project #2: DUNGEON
« Reply #77 on: May 11, 2009, 11:58:45 am »
nice! I can't wait to test it. I have currently added a sword enemies and some magic. the sword will kill enemies, the enemies will move about and damage you (this slows down the game a bunch though) and the magic will suck health from the enemies (cool animation too). I'm in the middle of fixing the sword animation and planning some more items/powerups. I also found a good mapeditor that I'm using. when I get home I'll post the code so anybody who wants to can optimize it for me
Nice ideas. I was thinking about adding in weapons that would help kill enemies, but I went against it because I thought it would slow it down too much. Can't wait to see how it works for you though.

Also, I'd be glad to help you optimize.
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Side Project #2: DUNGEON
« Reply #78 on: May 11, 2009, 02:54:16 pm »
kk, thanks!. the weapons only slow it down if you use them (it plays out the animation while everything pauses) it will call the subroutine if you press the attack button. It looks pretty cool, but I might get rid of the enemies, they really slow down the game.
/e

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Side Project #2: DUNGEON
« Reply #79 on: May 11, 2009, 06:14:07 pm »
ok, I got home now, let me upload some screenies
the first one shows the sword and the second the sword and the magic (which is epic by the way) this is all running from a TI-83+ ROM on wabbitemu, but it is running faster then the actual calc by about 1/3 ( but keep in mind that is is a 83+ not a 84+ SE so it is still pretty quick)
heheh, this is much funner on an emulator
/e

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Side Project #2: DUNGEON
« Reply #80 on: May 11, 2009, 06:49:48 pm »
mhmm this must be quite amazing to play on SE. I also like the tiles used

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Side Project #2: DUNGEON
« Reply #81 on: May 11, 2009, 07:03:08 pm »
thanks Omni!
as per request I am posting my code for optimization
Code: [Select]
main engine::

:Text(‾1,0,0,sub(Str1,1,15
:Text(‾1,8,0,sub(Str1,16,15
:Text(‾1,16,0,sub(Str1,31,15
:Text(‾1,24,0,sub(Str1,46,15
:Text(‾1,32,0,sub(Str1,61,15
:Text(‾1,40,0,sub(Str1,76,15
:Text(‾1,48,0,sub(Str1,91,15
:Text(‾1,56,0,sub(Str1,106,15
:StorePic 2
:Text(‾1,0,0,sub(Str2,1,15
:Text(‾1,8,0,sub(Str2,16,15
:Text(‾1,16,0,sub(Str2,31,15
:Text(‾1,24,0,sub(Str2,46,15
:Text(‾1,32,0,sub(Str2,61,15
:Text(‾1,40,0,sub(Str2,76,15
:Text(‾1,48,0,sub(Str2,91,15
:Text(‾1,56,0,sub(Str2,106,15
:RecallPic 2
:L1(3→B:L1(4→A
:L1(1→G
:L1(2→H
:L1(5→S
:L1(6→T
:L2(1→Z
:L2(2→Y
:L2(3→X
:DelVar M
:DelVar JText(‾1,0,90,H
:If S:Then
:Text(‾1,24,90,"!
:End
:If G=3:Then
:Text(‾1,16,90,"
:End
:If T:Then
:Text(‾1,32,90,"
:End
:While A≠1 and A≠9 and B≠0 and B≠16 and H
:If E:Then
:E-1→E
:If not(E
:Then
:Text(‾1,8,90,"
:End:End
:A→C
:B→D
:Text(‾1,8A-8,6B-6,"Ω
:If M
:Then
:2→M
:Text(‾1,8A-8,6B-6,"Î
:End
:getKey→K
:If K:Then
:B+(K=26)-(K=24→B
:If B≠D
:Then
:If B and B≠16 and ""=sub(Str1,15A-14+B-1,1
:Then
:D→B
:End
:End
:End
:If A≠1 and A≠9
:Then
:If not(J) and ""≠sub(Str1,15(A+1)-15+B,1) and ""≠sub(Str1,15(A-1)-15+B,1
:Then
:A+1→A
:Else
:If S and K=21:Then
:prgmZAT
:End
:If T and K=31:Then
:prgmZSH
:End
:J+G(K=25 and not(J→J
:End
:If J:Then
:If ""≠sub(Str1,15(A-1)-15+B,1
:Then
:A-1→A
:End
:J-1→J
:End
:If (A≠C or B≠D) and B and B≠16
:Then
:Text(‾1,8A-8,6B-6,"Ω
:Text(‾1,8C-8,6D-6,"
:If ""=sub(Str1,15C-15+B,1
:Then
:Text(‾1,8C-8,6D-6,"
:End
:If 2=M
:Then
:Text(‾1,8C-8,6D-6,"Î
:DelVar M
:End
:End
:If " "≠sub(Str1,15A-15+B,1
:Then
:prgmZIT
:End:End
:If Z:Then
:prgmZEN
:End:End
:G→L1(1
:H→L1(2
:A→L1(3
:B→L1(4
:S→L1(5

special tiles (prgmZIT)

:If "o"=sub(Str1,15A-15+B,1
:Then
:1→T
:sub(Str1,15A-15+B,length(Str1)-15A-14+B→Str3
:sub(Str2,1,15A-16+B)+" "+Str3→Str1
:Else
:If "!"=sub(Str1,15A-15+B,1
:Then
:1→S
:sub(Str1,15A-14+B,length(Str1)-(15A-14+B→Str3
:sub(Str1,1,15A-16+B)+" "+Str3→Str1
:Text(‾1,24,90,"!
:Else
:If "Δ"=sub(Str1,15A-14+B-1,1
:Then
:H+3→H
:If 9<H
:Then
:9→H
:End
:sub(Str1,15A-14+B,length(Str1)-(15A-14+B→Str3
:sub(Str1,1,15A-16+B)+" "+Str3→Str1
:Text(‾1,0,90,H
:Text(‾1,8,90,"┼
:3→E
:Else
:If ""=sub(Str1,15A-14+B-1,1
:Then
:Text(‾1,16,90,"
:sub(Str1,15A-14+B,length(Str1)-15A-14+B→Str3
:sub(Str1,1,15A-14+B-2)+" "+Str3→Str1
:3→G
:Else
:If "Î"=sub(Str1,15A-14+B-1,1
:Then
:Text(‾1,0,90,H
:H-1→H
:1→M
:End
:End
:End
:End

sword animation (prgmZAT)

:15A-15+B→S
:Text(‾1,8A-8,6(B+1)-6,"-
:Text(‾1,8(A-1)-8,6(B+1)-6,"/
:Text(‾1,8A-8,6(B+1)-6,sub(Str1,S+1,1
:StorePic 2
:Text(‾1,8A-8,6(B+1)-6,sub(Str2,S+1,1
:RecallPic 2
:Text(‾1,8(A-1)-8,6B-6,"!
:Text(‾1,8(A-1)-8,6(B+1)-6,sub(Str1,S-14,1
:StorePic 2
:Text(‾1,8(A-1)-8,6(B+1)-6,sub(Str2,S-14,1
:RecallPic 2
:Text(‾1,8(A-1)-8,6(B-1)-6,"
:Text(‾1,8(A-1)-8,6B-6,sub(Str1,S-15,1
:StorePic 2
:Text(‾1,8(A-1)-8,6B-6,sub(Str2,S-15,1
:RecallPic 2
:Text(‾1,8A-8,6(B-1)-6,"-
:Text(‾1,8(A-1)-8,6(B-1)-6,sub(Str1,S-16,1
:StorePic 2
:Text(‾1,8(A-1)-8,6(B-1)-6,sub(Str2,S-16,1
:RecallPic 2
:Text(‾1,8A-8,6(B-1)-6,sub(Str1,15A-16+B,1
:StorePic 2
:Text(‾1,8A-8,6(B-1)-6,sub(Str2,15A-16+B,1
:RecallPic 2
:1→S
:If (A=Y and (B-1=X or B+1=X)) or (A-1=Y and (B-1=X or B=X or B+1=X
:Then
:DelVar Z
:End


magic animation (prgmZSH)

:H+2(X=B or X=B+1 or X=B-1→H
:A-1→T
:If H>9:Then
:9→H
:End
:Text(‾1,8T-8,6B-6,"O
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,"o
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,"o
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,"∙
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,sub(Str1,15T-15+B,1
:StorePic 2
:Text(‾1,8T-8,6B-6,sub(Str2,15T-15+B,1
:RecallPic 2


enemy movement and action handler (prgmZEN)

:H+2(X=B or X=B+1 or X=B-1→H
:A-1→T
:If H>9:Then
:9→H
:End
:Text(‾1,8T-8,6B-6,"O
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,"o
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,"o
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,"∙
:For(θ,1,10):End
:Text(‾1,8T-8,6B-6,sub(Str1,15T-15+B,1
:StorePic 2
:Text(‾1,8T-8,6B-6,sub(Str2,15T-15+B,1
:RecallPic 2
as before the chars are a little bit wierd, if you want to know exactly which one it is just ask

EDIT: here are the files in case you want to test them out:
« Last Edit: May 11, 2009, 09:12:10 pm by Eeems »
/e

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Side Project #2: DUNGEON
« Reply #82 on: May 11, 2009, 09:34:06 pm »
this is actually quite nice and runs quite well on SE. I like how the sword animation was used ^^

I got ERR:DOMAIN when falling in holes, though

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Side Project #2: DUNGEON
« Reply #83 on: May 11, 2009, 09:34:52 pm »
I know why that happens, I had tried something but forgot to fix it, it will be gone in the next version
/e

Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
Re: Side Project #2: DUNGEON
« Reply #84 on: May 11, 2009, 10:07:48 pm »
Hmm I'll take a look at your code and see what I can do to optimize it.

Also, you should think about starting your own topic for this game. That way you can have/edit everything you want to whatever way you want to. Also, that won't get our two projects mixed up ;)
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Side Project #2: DUNGEON
« Reply #85 on: May 11, 2009, 11:04:15 pm »
kk, I'll do that
/e

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Side Project #2: DUNGEON
« Reply #86 on: May 11, 2009, 11:31:11 pm »
I was wondering at one point if it became a team project or something lol XD

Offline kalan_vod

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2715
  • Rating: +10/-0
    • View Profile
    • kalanrock.us
Re: Side Project #2: DUNGEON
« Reply #87 on: May 18, 2009, 06:27:42 pm »
You can optimize it for size by using a for loop, but it would probably a little slower (still fast)..

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Side Project #2: DUNGEON
« Reply #88 on: May 18, 2009, 10:01:42 pm »
how would I use a for loop? and I've switched topics to another one
/e

Offline simplethinker

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 695
  • Rating: +16/-5
  • snjwffl
    • View Profile
Re: Side Project #2: DUNGEON
« Reply #89 on: May 19, 2009, 12:50:01 am »
how would I use a for loop? and I've switched topics to another one
I believe he meant a For( loop for displaying the ASCII layers (which you previously switched from).
"We've all heard that a million monkeys banging on a million typewriters will eventually reproduce the entire works of Shakespeare. Now, thanks to the Internet, we know this is not true." -- Professor Robert Silensky



Chip's Challenge: ħ%