Author Topic: Dimension Shift  (Read 32642 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Dimension Shift: Contest Entry 2011
« Reply #165 on: June 23, 2011, 10:40:23 pm »
Hmm... when you finished this, once August 1st hits you should release the source in public so someone can make a basket ball game or something using the object manipulation stuff O.O

Also it looks awesome, as always :)
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #166 on: June 23, 2011, 10:45:10 pm »
I have the object physics separate actually, as a OBJPHYS.8xp...

Tho it's kind of specialized atm regarding detection and such, but I can edit a few things and release it ;)

EDIT: there's an idea..."Axketball" or something
« Last Edit: June 23, 2011, 10:46:28 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Dimension Shift: Contest Entry 2011
« Reply #167 on: June 24, 2011, 07:37:32 am »
I have the object physics separate actually, as a OBJPHYS.8xp...

Tho it's kind of specialized atm regarding detection and such, but I can edit a few things and release it ;)

EDIT: there's an idea..."Axketball" or something

That's a very good use for this routine, nice job with it :D

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #168 on: June 24, 2011, 10:59:32 am »
I've since added the ability to choose where the object originates in the level.  I'm thinking of developing a better UI for the editor, atm it's kind of messed up (you have to memorize the something like 8 buttons atm :P
Vy'o'us pleorsdti thl'e gjaemue

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #169 on: June 27, 2011, 10:44:56 pm »
Atm I'm implementing options to the editor:  whether the player is allowed to shift and/or switch.

While I'm doing that, feel free to throw out anything you'd like to see in this (keep it realistic, tho :P)

Planned/thought about (mostly tiles) :
tile solid to player, air to object
vice-versa of above
tiles that create force on object (ie if it goes in a down tile it's vert velocity is set to the max downward, 32 (all 4 directions))
one-way tiles, might have trouble spriting (tile animations are pretty much out of the question with 4 level grayscale unless i went to 15 mhz)
switches, doors
multiple objects?
8*8 graphics with either
    smoothscrolling or roughscrolling

EDIT: also it looks as if "go boom" is going better in the poll.  what should happen afterwards?

EDIT2: also I'm trying to wring out this completely random bug...I think i know what's causing it but the easy way to fix it would also be a good way to slow the engine down: recompute a few coordinates for detection x.x
« Last Edit: June 27, 2011, 11:16:10 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

Offline Compynerd255

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 336
  • Rating: +53/-4
  • Betafreak Games
    • View Profile
    • Betafreak Games
Re: Dimension Shift: Contest Entry 2011
« Reply #170 on: June 28, 2011, 08:09:48 pm »
Also it looks as if "go boom" is going better in the poll.  what should happen afterwards?
If the item is in the solid object, it should explode and destroy blocks in the immediate vicinity, then regenerate at its original location. This could be used as a puzzle element (the only way to get through a certain block complex is to destroy it, for instance).
But if you are in the solid object, you should die, and the level should restart.
« Last Edit: June 28, 2011, 08:10:03 pm by Compynerd255 »
The Slime: On Hold, preparing to add dynamic tiles

Axe Eitrix: DONE

Betafreak Games: Fun filled games for XBox and PC. Check it out at http://www.betafreak.com



Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #171 on: June 28, 2011, 08:13:09 pm »
Sounds good, editing the map might be tricky, but possible.

Also btw I'm not sure how possible it will be to have an explosion per se while the game is going, unless I redrew the level every frame.  I'm still working in 6mhz, so that would cause major slowdown x.x
« Last Edit: June 28, 2011, 08:13:22 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

Offline leafy

  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1554
  • Rating: +475/-97
  • Seizon senryakuuuu!
    • View Profile
    • keff.me
Re: Dimension Shift: Contest Entry 2011
« Reply #172 on: June 28, 2011, 08:56:00 pm »
Darl couldn't you just, when all the objects are not yet drawn, delete pixels or RectI( from whichever buffer you're working with? I agree, that would be an awesome gameplay element ^^
In-progress: Graviter (...)

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #173 on: June 29, 2011, 08:02:11 pm »
What i meant was a real explosion effect would probably be impossible in 6mhz without the game going at about 3/4 of the fps it's going now (unless runer was involved :P).
Not to mention how larger it would make it x.x

Simply making the box disappear is easily doable.
So, make box disappear and respawn at set point it is. (unless there's another good idea out there)

This means I'll have to make some indestructible blocks or something, b/c otherwise it would be possible to beat pretty much any level just by blasting your way through it if the object exists :/
(yes, planned option is whether object exists or not)


Designing a simple GUI for the editor atm.  So many options... 0.o
« Last Edit: June 29, 2011, 08:13:34 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

Offline Compynerd255

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 336
  • Rating: +53/-4
  • Betafreak Games
    • View Profile
    • Betafreak Games
Re: Dimension Shift: Contest Entry 2011
« Reply #174 on: June 29, 2011, 08:25:31 pm »
What i meant was a real explosion effect would probably be impossible in 6mhz without the game going at about 3/4 of the fps it's going now (unless runer was involved :P).
Not to mention how larger it would make it x.x
Notice that Builderboy's explosions are simply concentric circles with lines sticking out that only appear for 1 frame, along with a little screen shake using z-indexing (LCDKit).
The Slime: On Hold, preparing to add dynamic tiles

Axe Eitrix: DONE

Betafreak Games: Fun filled games for XBox and PC. Check it out at http://www.betafreak.com



Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #175 on: June 29, 2011, 08:37:15 pm »
True.  But idk if there's a way to XOR circles and/or lines, else I would have to redraw a buffer (or both) and that would be quite the pause x.x
* Darl181 wonders how builder did it..
« Last Edit: June 29, 2011, 08:37:37 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue

Offline Runer112

  • Moderator
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Dimension Shift: Contest Entry 2011
« Reply #176 on: June 29, 2011, 08:40:23 pm »
I believe Builderboy stores the tilemap image in a buffer other than L₆, probably L₃. He can then use RecallPic every frame to recall the tilemap image to L₆, overwriting any sprites/circles that may have been drawn last frame.

Offline leafy

  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1554
  • Rating: +475/-97
  • Seizon senryakuuuu!
    • View Profile
    • keff.me
Re: Dimension Shift: Contest Entry 2011
« Reply #177 on: June 29, 2011, 08:47:46 pm »
^That's also how I do it.
In-progress: Graviter (...)

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #178 on: June 29, 2011, 09:24:36 pm »
:headdesk:
Hm since I'm using both buffers and the program is getting rather large as it is (~11k) I'll use an appvar or something rather than Zeros() .  w00t.
Actually I already have two extra buffers for the flipping thing...imma use that and save a few bytes ;D

Ok, this is doable now.  I'll probably just use vertical +/- since I'm using RecallPic when needed anyway.
[/train of thought]
Vy'o'us pleorsdti thl'e gjaemue

Offline Darl181

  • «Yo buddy, you still alive?»
  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3408
  • Rating: +305/-13
  • VGhlIEdhbWU=
    • View Profile
    • darl181.webuda.com
Re: Dimension Shift: Contest Entry 2011
« Reply #179 on: July 01, 2011, 03:04:07 pm »
I was wondering...
If I re-used the Tio tile selector (my own code) for the level editor, would that have a negative effect on the originality score?
Specifically a really modified version of this: (code from pre-050 or whenever closing parenthesis were suddenly needed more than before or whatever)
Spoiler For big wall of code:
:Data(1,2,3,4,5)→GDB01
:"FIRST ITEM OF FIRST ROW"→Str1
:"SECOND ITEM"
:[00]
:"THIRD"
:[00]
:"ETC"
:[00]
:Data(1,3,3,7)→GDB02
:"SECOND ROW"→Str2
:"WOO"
:[00]
:Data(6,5,5,3,6)→GDB03
:"YAY THIRD ROW"→Str3
:"SO YEAH"
:[00]
:"THE GAME"
:[00]
:.************
:.stuff here, main loop etc
:.************
:If getKey(47)
.still in main loop
:0→N→O
:Copy(L6,GDB6,768)
:ClrDraw
:Fix 5
:Text(3,2,"ROW 1"
:Pt-On(1,10,Pic01A
:...
:Pt-On(6,10,Pic01B
:Text(3,20,"ROW 2"
:.Pt-On(1,28,Pic02
:Text(3,38,"ROW 3"
:.Pt-On(1,46,Pic03
:...
:Text(3,55,"FIRST TILE TITLE GOES HERE"
:While getKey(47):Pause 10:End
:Repeat getKey(54) or (getKey(15)) or (getKey(47)
:Pt-Change(N*5,O*18+9,Pic1ES
:.Pic1ES is selector pic
:DispGraph
:Pt-Change(N*5,O*18+9,Pic1ES
:Repeat getKey(54) or (getKey(15)) or (getKey(2) xor (getKey(3))) or (getKey(1) xor (getKey(4)))
:End
:If getKey(1) or (getKey(4):Pause 100:End
:O+getKey(1)-getKey(4)→O
:If O>>2:0→O:End:If O<<0:2→O:End
:N+getKey(3)-getKey(2)→N
:!If O
:.IN FIRST ROW
:If N<<0:5→N:End:If N>>5:0→N:End
:.0 IS MIN W/E MAX IS PUT THERE
:Str1→C
:End
:!If O-1
:.IN SECOND ROW
:If N<<0:6→N:End
:If N>>6:0→N:End
:Str2→C
:End
:!If O-2
:.THIRD
:If N<<0:7→N:End:If N>>7:0→N:End
:Str3→C
:End
:Pause 200
:N→A
:For(B,1,A
:length(C)+C+1→C
:End
:Rect(3,55,90,7
:RectI(3,55,90,7
:Text(3,55,C
:End
:ClrDraw
:Copy(GDB6,L6,768)
:DispGraph
:!If getKey(15)
:!If O
:{N+GDB1}→θ
:End
:!If O-1
:{N+GDB2}→θ
:End
:!If O-2
:{N+GDB3}→θ
:End
:End
:While getKey(54):Pause 10:End
:If getKey(15)
:While getKey(15):Pause 10:End
:End
:Fix 4
:End
« Last Edit: July 01, 2011, 04:59:12 pm by Darl181 »
Vy'o'us pleorsdti thl'e gjaemue