Announcement: Remember: you are giving away your fantastic ideas for free, and somebody else might even make money from them (or appear to). That's just how the world works! If you're worried about it, maybe you shouldn't post your ideas here.


Caravel Forum : DROD Boards : Feature Requests : New Script Command: Build Tile
New Topic New Poll Post Reply
Poster Message
TFMurphy
Level: Smitemaster
Rank Points: 3118
Registered: 06-11-2007
IP: Logged

File: DROD Build Tile.txt (9.9 KB)
Downloaded 56 times.
License: Public Domain
icon New Script Command: Build Tile (+2)  
This command would take the same arguments as Build Marker and have the same restrictions. The difference, however, is that Build Tile would activate immediately and not require a citizen to visit the tile. Tiles built in this manner act as if they've just been placed by a builder.

The uses of this command mostly come in handy for cutscenes (especially since image floor can already be placed, but you could also simulate things like walls closing in and the like) as well as sweeping room changes on Turn 0 (perhaps the room's "changed" while you were away). This also wouldn't replace Builders - whose very presence, the markers they have and their usage in TCB all hint at what may come as a puzzle element - but it could certainly tie into other scripting uses the architect is using in the same hold.

As with all script commands of this nature, there's always the possibility of abuse - but no more than the Appear At command. And with most of the framework already in place with Builders around, it's not all that difficult a feature to implement: I've managed to put together a rather pleasing beta version in the last hour or so to play around with. I've attached the diff of what I've done if anyone's curious - the niggling things left would be:

* Updating MIDs.h/.uni files.
* The fact that at the moment, it's using the exact Build rules for what may be placed when - but it might be useful if, for example, walls placed with Build Tile were plotted even if there's an enemy in the way.
* The lack of modularity with the quick and dirty code I put together to test - ideally, Build Tile and builders putting stuff together would use the same subroutine with possibly an argument passed to it to sort out any differences in rules. That way, any additions to Builders become easier to deal with with regards to Build Tile.

Anyways, that's it in a nutshell. If anyone has anything to add, feel free.

EDIT: After a bit more testing, I found that pits/water built on Turn 0 had the capacity to kill the player and critical characters. This obviously should not happen. As a result, I've added in a "this->pCurrentGame->wTurnNo > 0" condition to the BuildTile routine in Character.cpp. This results in pits being created on Turn 0 to not trigger falling. This seems consistent with how characters that Turn Into Monster over pits work: they won't fall until something causes the ground underneath them to change (like passing a platform under them and then moving it away).

I've updated the diff with the new line, but given that it's just one new line, you don't need to download it again if you've already seen it.

[Last edited by TFMurphy at 03-20-2008 04:18 PM]
03-20-2008 at 02:44 AM
View Profile Send Private Message to User Show all user's posts This architect's holds Quote Reply
New Topic New Poll Post Reply
Caravel Forum : DROD Boards : Feature Requests : New Script Command: Build Tile
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.9
Originally created by Toan Huynh (Copyright © 2000)
Enhanced by the tForumHacks team and the Caravel team.