Announcement: Why not try our official idea generator for inspiration when making puzzles?


Caravel Forum : DROD Boards : Architecture : A few newbie questions
New Topic New Poll Post Reply
Poster Message
Camwoodstock
Level: Master Delver
Avatar
Rank Points: 112
Registered: 07-02-2014
IP: Logged
icon A few newbie questions (+2)  
1. I can't find the command for "if (variable = thing), then do this stuff." I'm a huge idiot most likely, but yeah.
2. How do I remove rooms? Is that possible?

EDIT: Fixed one on my own, by the way.

____________________________
Camwoodstock - The Epic Blunder, Dugan's Best Janitor, Rooted Hold Runner, Lowest Point Watcher, and 132nd Skywatcher (and 13th Gel Authority)
Mastered all of GatEB, KDD 2.0, JtRH, and TCB! | Saw The Second Sky! (lots of secrets left!)

Her/him | & | Steam | Backloggery

[Last edited by Camwoodstock at 10-01-2016 02:57 AM]
10-01-2016 at 02:45 AM
View Profile Send Private Message to User Show all user's posts Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1527
Registered: 06-13-2015
IP: Logged
icon Re: A few newbie questions + a steam related one (+2)  
1. You have to put in the "If..." command first, then ALL of the conditionals are separate commands the form "Wait for such-and-such" where such-and-such is a valid condition (i.e., "Wait Until var" is the condition for a variable being equal to a particular value). The conditional is a command you put in after the "If..." or "Else If..." commands. Also make sure to put in an "If End" command after whatever it was you wanted the conditional to do is over.
I know, DROD scripting is a very odd duck.

2. Go to the very first screen you see after clicking the "Build Hold" option (or whatever it's called) on the main menu, click the room you don't want in the map on the right side of the screen, and push the "delete" key. It will ask for confirmation, letting you know you can't undo it. Also it won't let you delete a room that has the main level entrance in it, but you can always change which level entrance is the main one.

3. Leaving this to somebody else, I don't know.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text


[Last edited by Xindaris at 10-01-2016 02:55 AM]
10-01-2016 at 02:53 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Camwoodstock
Level: Master Delver
Avatar
Rank Points: 112
Registered: 07-02-2014
IP: Logged
icon Re: A few newbie questions (0)  
Well, I know how to delete rooms now, but the scripting still gets me.

While I'm at it; is there a dedicated thread for getting other people's tilesets, without having to be connected to CaravelNet itself? I know there's an import tilesets button...

And is it possible to make my own tilesets even without a CaravelNet subscription? Does it usually require one? (The whole CaravelNet thing really confuses me...)

____________________________
Camwoodstock - The Epic Blunder, Dugan's Best Janitor, Rooted Hold Runner, Lowest Point Watcher, and 132nd Skywatcher (and 13th Gel Authority)
Mastered all of GatEB, KDD 2.0, JtRH, and TCB! | Saw The Second Sky! (lots of secrets left!)

Her/him | & | Steam | Backloggery
10-02-2016 at 04:17 AM
View Profile Send Private Message to User Show all user's posts Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1527
Registered: 06-13-2015
IP: Logged
icon Re: A few newbie questions (0)  
I don't know anything about making or submitting new tilesets/styles, but I do know that this page in the download section is where you can download all the custom styles people put up, and then you can import them from the game in the way this page instructs:

http://forum.caravelgames.com/site/styles

There are lots of things (like downloading custom holds and styles) that you can do through the website + the "Import" button in the game, but which are made more convenient by Caravelnet. The things that are Caravelnet exclusive is stuff like submitting scores if you're into that, creating a beta board for a hold you're working on, and a chat with other people who subscribed. Things like using the forum, uploading holds for public testing, submitting holds for approval, etc. are all totally free.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text


[Last edited by Xindaris at 10-02-2016 05:01 AM]
10-02-2016 at 04:59 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Chaco
Level: Smitemaster
Rank Points: 3623
Registered: 10-06-2005
IP: Logged
icon Re: A few newbie questions (0)  
Camwoodstock wrote:

While I'm at it; is there a dedicated thread for getting other people's tilesets, without having to be connected to CaravelNet itself? I know there's an import tilesets button...

There's an (incomplete) list of published style sheets on the main fansite's style list.

You can also browse the Development forum for additional styles - the [UR http://forum.caravelgames.com/viewtopic.php?TopicID=10712]Master List of Projects has some more that aren't listed in the aforementioned list, but this list too is incomplete, so you might need to search even more to find more styles. That should be enough to get started, though.

And is it possible to make my own tilesets even without a CaravelNet subscription? Does it usually require one? (The whole CaravelNet thing really confuses me...)

Yeah, for that all you need to do is make the files according to the help guide and whatever posted template you want to base things off of, then put them in your DROD's bitmap folder so the game recognizes your new style, then export the style file.

CaravelNet only does four things:

1. Lets you upload your scores to the server for ranked highscores
2. Lets you download holds in-game instead of downloading the file and manually importing them
3. Lets you use CaravelNet chat
4. Lets you make beta boards for private beta testing, with automatic demo uploading (so you can see people's demos as soon as they beat your rooms, without them having to post them).

____________________________
Quick links to my stuff (in case you forgot where it was):
Click here to view the secret text

10-02-2016 at 05:03 AM
View Profile Send Private Message to User Send Email to User Show all user's posts High Scores This architect's holds Quote Reply
Camwoodstock
Level: Master Delver
Avatar
Rank Points: 112
Registered: 07-02-2014
IP: Logged
icon Re: A few newbie questions (0)  
Alright, sorry for the late reply, but now all I need help with is how to make those if/then/else/end things work. It's not helping too much.

How I'm setting it up is this:
Click here to view the secret text


I can tell the Else If is incorrect, but the thing is that it instantly sees the challenge as complete upon entering. And that's not supposed to happen, obviously.

____________________________
Camwoodstock - The Epic Blunder, Dugan's Best Janitor, Rooted Hold Runner, Lowest Point Watcher, and 132nd Skywatcher (and 13th Gel Authority)
Mastered all of GatEB, KDD 2.0, JtRH, and TCB! | Saw The Second Sky! (lots of secrets left!)

Her/him | & | Steam | Backloggery
10-09-2016 at 01:06 AM
View Profile Send Private Message to User Show all user's posts Quote Reply
Camwoodstock
Level: Master Delver
Avatar
Rank Points: 112
Registered: 07-02-2014
IP: Logged
icon Re: A few newbie questions (0)  
[Post Deleted] Nuntar wrote:
There are two problems. Firstly, you haven't put in a condition. As Xindaris said, you use the "Wait" commands for this. I haven't seen the room, so I don't know what condition you want, but here's an example of the syntax:

If...
Wait for entity Player at (16,16)
Challenge complete "All the Sixteens"
If End

This is equivalent to "If the player is at (16,16), award the challenge".

More importantly, I don't think this is actually the structure you want. "If" as the first line of a script will check whether its condition is true on turn 0, which is only really useful when you want to check which side the player has entered from.

It looks to me like you want a standard two-script challenge, which uses two scripts and a custom variable, which I usually call "ChallengeFail". The first script goes like this:

Set var ChallengeFail = 0
Wait for event [whatever fails the challenge]
Set var ChallengeFail = 1

and the second like this:

Wait for clean room
If...
Wait until var ChallengeFail = 0
Challenge completed [challenge name]
If End
End

In this case, the first script waits for a particular condition on any turn, and if it ever happens, sets the ChallengeFail variable to 1. The second script waits until the room is clear (actually, until the turn after) and awards the challenge if the variable still has its initial value of 0 (i.e. if the fail condition has not been met).

Important! The second script has the "End" command at the end, but the first does not.

Um, if it helps, my idea was to make it so simply clearing the room completes the challenge. Kinda like the "First Blood" challenge in GatEB.

____________________________
Camwoodstock - The Epic Blunder, Dugan's Best Janitor, Rooted Hold Runner, Lowest Point Watcher, and 132nd Skywatcher (and 13th Gel Authority)
Mastered all of GatEB, KDD 2.0, JtRH, and TCB! | Saw The Second Sky! (lots of secrets left!)

Her/him | & | Steam | Backloggery
10-09-2016 at 01:39 AM
View Profile Send Private Message to User Show all user's posts Quote Reply
bomber50
Level: Smitemaster
Rank Points: 872
Registered: 09-18-2006
IP: Logged
icon Re: A few newbie questions (0)  
Camwoodstock wrote:
Um, if it helps, my idea was to make it so simply clearing the room completes the challenge. Kinda like the "First Blood" challenge in GatEB.
Wait for clean room
Challenge completed [challenge name]
End

10-09-2016 at 02:43 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Camwoodstock
Level: Master Delver
Avatar
Rank Points: 112
Registered: 07-02-2014
IP: Logged
icon Re: A few newbie questions (0)  
bomber50 wrote:
Camwoodstock wrote:
Um, if it helps, my idea was to make it so simply clearing the room completes the challenge. Kinda like the "First Blood" challenge in GatEB.
Wait for clean room
Challenge completed [challenge name]
End

Oh my god, I am an idiot. I didn't use the End command.

I am so, so sorry.

____________________________
Camwoodstock - The Epic Blunder, Dugan's Best Janitor, Rooted Hold Runner, Lowest Point Watcher, and 132nd Skywatcher (and 13th Gel Authority)
Mastered all of GatEB, KDD 2.0, JtRH, and TCB! | Saw The Second Sky! (lots of secrets left!)

Her/him | & | Steam | Backloggery
10-09-2016 at 02:52 AM
View Profile Send Private Message to User Show all user's posts Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1527
Registered: 06-13-2015
IP: Logged
icon Re: A few newbie questions (+1)  
Just for future reference, be very careful about ever using the End command for anything. On reaching the End command the character running the script will never* run its script again, not even if the room is "uncleared" via seeding beacons or such in order to do something like allow a player to retry a challenge without having to restore, or require a player to redo a room from a different direction, etc.

*-Not counting the player restoring or undoing to before the script hit the "End" command.

My usual alternative to the End command is having a "Label Stop" at the very bottom of the character's list of commands and having an if with whatever conditions make me not want the script to do anything (such as an already-clean room on turn 0 in the case of a challenge) Goto that label.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text


[Last edited by Xindaris at 10-09-2016 04:26 AM]
10-09-2016 at 04:24 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Camwoodstock
Level: Master Delver
Avatar
Rank Points: 112
Registered: 07-02-2014
IP: Logged
icon Re: A few newbie questions (0)  
If I may ask, is there a way to make the script check for if you completed a challenge, and run the script if you have, but don't do it if you haven't?

____________________________
Camwoodstock - The Epic Blunder, Dugan's Best Janitor, Rooted Hold Runner, Lowest Point Watcher, and 132nd Skywatcher (and 13th Gel Authority)
Mastered all of GatEB, KDD 2.0, JtRH, and TCB! | Saw The Second Sky! (lots of secrets left!)

Her/him | & | Steam | Backloggery
10-09-2016 at 03:15 PM
View Profile Send Private Message to User Show all user's posts Quote Reply
Chaco
Level: Smitemaster
Rank Points: 3623
Registered: 10-06-2005
IP: Logged
icon Re: A few newbie questions (0)  
Camwoodstock wrote:
If I may ask, is there a way to make the script check for if you completed a challenge, and run the script if you have, but don't do it if you haven't?

No, scripts don't have access to the fact of "whether you completed a challenge at any point in the past, during any past save". That's a global hold property (like whether you mastered the hold or not), and scripts can't test that.

If you want to check for "whether the player completed the challenge during the current save", you can set a test variable like "Level5_2S2E_ChallengeBeat" to 1 once that challenge is beaten, and then check the value of that variable later. But, that will only do whatever the script was if the player does that challenge during the same run, which might not be the behavior you want (since it discourages people from using the Restore function).

____________________________
Quick links to my stuff (in case you forgot where it was):
Click here to view the secret text


[Last edited by Chaco at 10-09-2016 03:31 PM]
10-09-2016 at 03:31 PM
View Profile Send Private Message to User Send Email to User Show all user's posts High Scores This architect's holds Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1527
Registered: 06-13-2015
IP: Logged
icon Re: A few newbie questions (0)  
It's perfectly acceptable to use a variable that way if you just want a room to not re-award a challenge a bunch of times, though.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text

10-09-2016 at 06:38 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
New Topic New Poll Post Reply
Caravel Forum : DROD Boards : Architecture : A few newbie questions
Surf To:


Forum Rules:
Can I post a new topic? No
Can I reply? No
Can I read? Yes
HTML Enabled? No
UBBC Enabled? Yes
Words Filter Enable? No

Contact Us | CaravelGames.com

Powered by: tForum tForumHacks Edition b0.98.8
Originally created by Toan Huynh (Copyright © 2000)
Enhanced by the tForumHacks team and the Caravel team.