Some questions about level making

Started by Emmy, July 26, 2017, 03:01:44 AM

Previous topic - Next topic

Emmy

1.  Is there a way with scripting to make gravlines or warp tokens appear?  Possibly after a different script plays that makes them disappear?  Also is it possible to make anything else appear or disappear with scripting? (enemies, disappearing platforms, script boxes, anything else?)

2.  How do I make multiple enemy bounds?  Suppose I want to make 2 sets of bounds like how I drew the boxes here, can I do that? http://i.imgur.com/v3Gnxpa.jpg

3.  On a related note, how do you make enemies change direction?  I've seen a few player rooms that make them move, for example, in an L shape.

moth ✨

1. just use gotoroom and the coordinates of that room, which refreshes them to return

2. not possible as far as a i know

3. you have? im pretty sure thats not possible either. if you can show me an example of a level that does that, link it here

Ally 🌠

Quote from: Emmy on July 26, 2017, 03:01:44 AM
1.  Is there a way with scripting to make gravlines or warp tokens appear?  Possibly after a different script plays that makes them disappear?  Also is it possible to make anything else appear or disappear with scripting? (enemies, disappearing platforms, script boxes, anything else?)
Gravity lines are possible through internal scripting with the createentity() command.
Same with warp tokens.
And enemies and platforms.
Script boxes would just be messing with flags.
Quote from: Emmy on July 26, 2017, 03:01:44 AM
2.  How do I make multiple enemy bounds?  Suppose I want to make 2 sets of bounds like how I drew the boxes here, can I do that? http://i.imgur.com/v3Gnxpa.jpg
You can't really.
For the future, you might want to see this list.
Bouncing up and down, but only reaches a certain x position before going back down. Used in "Trench warfare".
This could be useful.
Quote from: Emmy on July 26, 2017, 03:01:44 AM
3.  On a related note, how do you make enemies change direction?  I've seen a few player rooms that make them move, for example, in an L shape.
You can't without amazing internal scripting.

Emmy

Thank you for your fast replies. :)  I realize that I might have seen an illusion with enemies moving in an L with multiple enemies, when I couldn't find an immediate example where I remembered it looking through levels I've played in the editor.

Quote from: -Kiwi Alexia ♡ on July 26, 2017, 12:33:32 PM
Quote from: Emmy on July 26, 2017, 03:01:44 AM
1.  Is there a way with scripting to make gravlines or warp tokens appear?  Possibly after a different script plays that makes them disappear?  Also is it possible to make anything else appear or disappear with scripting? (enemies, disappearing platforms, script boxes, anything else?)
Gravity lines are possible through internal scripting with the createentity() command.
Same with warp tokens.
And enemies and platforms.
Script boxes would just be messing with flags.

Can you give me an example of how to use the createentity() command here?  Or a player level that makes use of this?

Ally 🌠

Quote from: Emmy on July 26, 2017, 03:05:31 PM
Can you give me an example of how to use the createentity() command here?  Or a player level that makes use of this?
You might want to start with my internal scripting tutorial.
createentity(x,y,n,length)
x = x on the screen
y = y on the screen
n = 11/12
11 is horz
12 is vertical
length is the length in pixels

Emmy

More questions:

1. When is "end" and a blank line needed at the end of scripts and when is it not?

2.  I'm still unsure what I have to do to use createentity.  Do I place the script box somewhere on the screen that the player has to walk into and the enemy appears?  Do I have to have it trigger in another room? Or have people modified ved to use it? 

3.  I've seen a player level make use of custom tile sets/music.  What is possible to change this way? (everything? or just tile sets and music?)  Assuming that the folder is packaged with the level, how would I get the game to read off of the custom stuff?

uugr

I'm not as proficient in internal scripting as Alexia/Shiny, so these answers may be a bit off. This has always worked for me, though.

1) An 'end' command is never needed to end a script, as far as I can tell. Internal scripts need exactly one blank line at the end or they won't work, and simplified scripts should have at least 1 blank line (you can have more), or else sometimes the game bugs out and deletes the last line. I know that internal scripts need 'loadscript(stop)' at the end, so maybe an 'end' command works as an alternative to that?

2) You can either put it in a script box that the player walks into or in a terminal that the player checks. Remember that it's an internal script, so you need to load it from another script using 'iftrinkets' or 'ifflag'. See Alexia's tutorial, linked above. (You can also use 'say(-1)' to load an internal script but that's buggier.)

3) Sprites (including tilesets), music, and sounds can be changed. Changing tilesets and sounds just involves putting whatever you want to use into a folder named either 'graphics' or 'sounds' in the VVVVVV folder (the one where your levels are stored). You'll have to name the graphics/sounds whatever the game calls them in its data.zip, which you can find in the game's folder under SteamApps if you're using the Steam version. I don't know where it is in other versions. Please observe this helpful instructional image -> http://i.imgur.com/GDx7HB3.png

Putting custom music in the game involves messing with the original vvvvvvmusic.vvv file, which is really complicated and goes way over my head. There's a tutorial here, though.

Ally 🌠

Quote from: Emmy on August 02, 2017, 04:31:37 PM
1. When is "end" and a blank line needed at the end of scripts and when is it not?
"end" is actually never needed.
Quote from: Emmy on August 02, 2017, 04:31:37 PM
2.  I'm still unsure what I have to do to use createentity.  Do I place the script box somewhere on the screen that the player has to walk into and the enemy appears?
Yes. The script only activates when the player touches it.
Quote from: Emmy on August 02, 2017, 04:31:37 PM
Do I have to have it trigger in another room? Or have people modified ved to use it? 
These won't work.
Quote from: Emmy on August 02, 2017, 04:31:37 PM
3.  I've seen a player level make use of custom tile sets/music.  What is possible to change this way? (everything? or just tile sets and music?)
Well at the moment you can change graphics, sounds and music.
By graphics I mean any graphics shown in game.
You can change how the crewmates look, you can change the huge elephant, anything really.
Quote from: Emmy on August 02, 2017, 04:31:37 PMAssuming that the folder is packaged with the level, how would I get the game to read off of the custom stuff?

C:\Users\USERNAME\Documents\VVVVVV
Your level folder is "Documents\VVVVVV\levels".
Instead, place the graphics in "Documents\VVVVVV\graphics", the music in "Documents\VVVVVV" and the sounds in "Documents\VVVVVV\sounds".

Here's an example of custom graphics:

Hope this helps!~


Quote from: uugr on August 02, 2017, 05:48:09 PM
I'm not as proficient in internal scripting as Alexia/Shiny,
b-but it's easy to learn
i totally havent been using it for ~2 years
Quote from: uugr on August 02, 2017, 05:48:09 PM
See Alexia's tutorial, linked above. (You can also use 'say(-1)' to load an internal script but that's buggier.)
say(-1) isn't really buggier unless you use:
say(-1)
changeplayercolour(green)

Which is incorrect (but works)
say(-1)
text(1,0,0,4)
say(4)
changeplayercolour(green)
endcutscene()
untilbars()
loadscript(stop)

This should work fine.
Quote from: uugr on August 02, 2017, 05:48:09 PM
Putting custom music in the game involves messing with the original vvvvvvmusic.vvv file, which is really complicated and goes way over my head. There's a tutorial here, though.
Actually, it's not that complicated if you have access to a linux environment, or you're using Windows 10 (after the anniversary update).
I'm using Windows 10 and I can do it easily.

DubstVne

I need help while making non-repeating scripts. can you help me do it? the code also freezes the game. here is the
code:

say(-1)
text(1,0,0,4)
say(4)
createentity(20.5,19,18,sad)
endcutscene()
untilbars()
loadscript(stop)
<blank line>

____________________________________________________________________________________________________________

I need some help so please reply  :viridian: thank you for helping

Ally 🌠

Quote from: DubstVne on November 26, 2017, 01:48:01 AM
say(-1)
text(1,0,0,4)
say(4)
createentity(20.5,19,18,sad)
endcutscene()
untilbars()
loadscript(stop)
<blank line>
Firstly
You don't wanna use the cutscene bars method for creating entities
Second, you can't use 20.5
You can't have half of a pixel
Thirdly use createcrewman() to create a crewmate
Because you can control it better

DubstVne

Quote from: -Kiwi Alexia ♡ on November 26, 2017, 04:54:22 PM
Quote from: DubstVne on November 26, 2017, 01:48:01 AM
say(-1)
text(1,0,0,4)
say(4)
createentity(20.5,19,18,sad)
endcutscene()
untilbars()
loadscript(stop)
<blank line>
Firstly
You don't wanna use the cutscene bars method for creating entities
Second, you can't use 20.5
You can't have half of a pixel
Thirdly use createcrewman() to create a crewmate
Because you can control it better
Ok, firstly
I dont know any other methods
second, crewmates are 2 tiles wide and I want to have it in a 2 tile wide space
Thirdly I did not know about createcrewman()

all said correctly, am I right?

Ally 🌠

Quote from: DubstVne on November 26, 2017, 08:47:00 PM
Ok, firstly
I dont know any other methods
second, crewmates are 2 tiles wide and I want to have it in a 2 tile wide space
Thirdly I did not know about createcrewman()

all said correctly, am I right?
1. The follow my tutorial. They're easy.
2. That doesn't change anything, like at all. You can't have half a pixel.
3. Try reading the internal commands reference

EpicCreeper9001

By the way, in the picture you posted, you only need one enemy bound.

Ally 🌠


Info Teddy

Quote from: EpicCreeper9001 on November 29, 2017, 02:02:22 PMBy the way, in the picture you posted, you only need one enemy bound.
Quote from: -Kiwi Alexia ♡ on November 29, 2017, 09:56:49 PM( ^ was directed to Emmy)
and what would that bound look like?