What aspects of VVVVVV have kept you interested in the game to this very day?

Started by Peridot, May 27, 2018, 06:32:28 PM

Previous topic - Next topic

Peridot


Info Teddy

i never play the main game, there's nothing to do there.

i enjoy creating custom levels with custom resources, because of the part where i try to come up with a new gimmick within the boundaries of the game's engine, and having to engineer ways around it and considering tradeoffs of one approach against another.

for example, let's consider tempel van hond's platform gimmick. it has big platforms whose dimensions are multiples of four tiles. they instantly disappear if you walk on top of them, but don't when you walk on them from underneath. i was thinking of having big blocks that you had to take out by simply walking on top of them, and you can see some of this design in a few rooms in tempel. originally, their triggers were one tile high, which meant in order to flip off of them you needed precise vertical pixel alignment, something very hard to come by. there was a room where i wanted the player to be able to flip off of them, but i couldn't consistently make a good setup that the player would naturally follow to have the perfect pixel alignment, so i moved the top platform down one pixel and put the trigger in the platform, and that way the trigger would be one pixel high, which would guarantee the player to be able to flip off of it. this also managed to give a marker to which side of the platform would destroy the platform, and which wouldn't. i tried giving the platform a timer so it wouldn't disappear instantly and the player would be able to flip off of it, which entailed using gotoroom to reload the room so the trigger to tick the timer would be able to fire continuously, which meant keeping track of which room the player was in (which was already done). the problem came when it took one tick for the trigger that spawned the platform to spawn, giving one tick in which the player was quickly dragged down and into the platform the next tick. in hindsight, i could've fixed this by calling the platform spawn script right after reloading the room, but that didn't occur to me until after the contest deadline when i used that to fix the bug where the platforms flashed when one was destroyed.

another example is open2v2's binary load flags. from what i remember, this was something i thought up right after fiq discovered do-pointers. when a do command is called, it stores the internal line number right after its line in a variable, and the internal line number is basically the line number in the script with all the internal scripting notation removed. it also stores the do-counter in another variable. when loop is called, it decrements the do-counter, and if it is greater than one then it jumps to the stored internal line number. notice that it doesn't jump to a specified script or any script, it just jumps to the internal line number. this means that we can use do and then jump to another script ourselves via customif(flag|trinkets). the saving isn't obvious yet. binary flags have already been in use as early as back to vvvvvv, where n flags are used to represent up to 2n states, which can represent numbers from 0 to 2n-1. the caveat was you'd need 2n-1 scripts, because this was how the script-checking would go: the first script checks the first flag, and then goes to one of two scripts: the script that checks the second flag while intrinsically knowing that flag one is on, or the script that checks the second flag while intrinsically knowing that flag one is off. each script further out would simply add two more scripts where both of them also each added two more scripts where both of them also also each added two more scripts, until you had as many "layers" of scripts as you had flags. do-pointers could save that many scripts by putting each "layer" of scripts into its own script, so the cost of scripts needed would be only as much flags as you used. this would be used to solve the problem of approaching the 500 script hard limit in open2v2, because we used loadscripts in almost every room in certain zones to spawn entities, teleport the player, and such. the solution was to have a binary number, as usual, and have a universal load script that loaded whatever script was assigned to that binary number, and to keep switching that number around to load different scripts. since the problem was too many scripts, without do-pointers, this approach would not have been cost-effective.

open2v2's implementation of binary load flags has had a few problems, which would be easily helped if i made some sort of program to automate them a little bit, which is what i'm planning on working on.

Viridan

i was mainly into it for the "make your own levels" thing but then i realized everyone is a snob about level design

at some point making levels just crossed over from having fun doodling out rooms to forcing myself to do it so i'll be cool or whatever

moth 🦋

2 or or 3 years ago i'd say "level making" but i dont really do that so basically just making assets for levels (especially art and stuff)
i also like playing custom levels though, its cool to see level design thats really good

Bruce Michez

Me?  The way that the custom level format is very conducive to story-telling.  Especially with internal scripting, though I didn't even need that until the third time...

Peridot

Yeah, I got to agree with you guys. The level-making aspects of VVVVVV is pretty awesome especially coupled with the amount of freedom internal scripting offers. Really wish I can hold my own and make a full-fledged level some day but every time I start the motivation to continue is mentally thown out the window...

Info Teddy

Quote from: Gawne 2.0 on May 30, 2018, 01:44:42 AMYeah, I got to agree with you guys. The level-making aspects of VVVVVV is pretty awesome especially coupled with the amount of freedom internal scripting offers. Really wish I can hold my own and make a full-fledged level some day but every time I start the motivation to continue is mentally thown out the window...
what if i do it for you then

Peridot

You could. I have a couple of levels that have been in the making for  months. I can send them to you some time if you wanna finish them or something.

Also sorry for the late reply

Info Teddy

Quote from: Gawne 2.0 on June 04, 2018, 03:16:02 AMYou could. I have a couple of levels that have been in the making for  months. I can send them to you some time if you wanna finish them or something.

Also sorry for the late reply
okay send