Commit Graph

36 Commits

Author SHA1 Message Date
0b9827cb6a Remove force-equip option from Force Give node 2015-06-24 01:54:35 -04:00
dfa04c0601 Add option to Affect XP node to set experience based on level 2015-06-24 01:54:31 -04:00
4c96fe3756 Allow special nodes to force a conversation to end
(using Prevent Action node)
2015-06-23 14:14:11 -04:00
9d74f78df3 Implement all the missing parts of the Edit Sheets and Edit Sounds dialogs
- On load, the game now detects graphic sheets and sounds whose IDs are "discontinuous", as well as graphics intended to directly replace preset graphic sheets.
- Edit sheets dialog can now handle "discontinuous" graphics. (The edit sounds dialog already could.)
- Edit sheets dialog prompts user to create a new sheet if there are none already, and also if there are some but not ID 0 (in the latter case they can cancel and still edit the sheets).
- Edit sheets dialog prompts user to convert sheets if the scenario is legacy, rather than doing it silently
- Edit sheets dialog now has "new" and "delete" buttons
- Edit sounds dialog now has functioning "delete" button
2015-06-17 04:29:10 -04:00
a990921e90 Several tweaks/fixes
- Nuke some uses of strcpy, sprintf, etc; current info strings in the scenario editor are now stored as std::string instead of C-strings.
- A smarter method of calculating the "erase" terrain for a given terrain type. In case of impassable spaces, trims, and walkways, instead of using the ground terrain, the trim terrain (if any) is used as the erase terrain; if there's no trim, ground 0 (cave, by default) is used. The method of determining if two terrains are essentially the same (ie, whether to paint or erase) has also been improved a little.
- Also, to reduce confusion, the erase terrain is now shown beneath the paint terrain.

Terrain changes:
- Add "archetype" flag as a better way of determining which amongst a set of terrains sharing the same ground type should be considered as the most basic terrain of that ground type. It's automatically applied to any terrains using original graphics when importing an old scenario; generally, any with no terrain special will be marked as an archetype, but if the lava graphic was used, it's instead any with a terrain special. It's a crude method that may easily break, but probably not possible to do better.
- When importing old scenarios, set the two walkways to be separate ground types while the crops should have grass as their ground, and the conveyors have cave.
- Fix fly, boat, block horse LEDs not being cleared if a terrain lacks that flag when using the arrow buttons. This could lead to terrains accidentally picking up the flags of nearby terrains in the list.
- Fix the block horse flag was not correctly saved when closing the dialog.
- Fix the block horse flag not being correctly loaded from the scenario file
2015-06-11 22:32:28 -04:00
6ef885c3ef Expand three special node types
Can't Enter node renamed to Prevent Action, as it's a more accurate description of what it does. It has been expanded to cover the following cases, all of which are documented:
- When the special node was called during an attack action (which involves a weapon whose ability is to call a special node when attacking, or an item or monster ability that calls a special node when hit), then Prevent Action reverses the action point cost.
- When called as the result of a purchase (a shop item that calls a special), then Prevent Action prevents gold from being deducted (which is also new in this commit, as before it never deducted gold)
- When called as the result of using a normal item (not a special item), then Prevent Action prevents a charge from being deducted
- When called as the result of a monster using its ability, then Prevent Action prevents the action points from being deducted
- Cases it already covered (cancelling initiation of talk mode, searching of containers, outdoor wandering encounters) have been documented
- The fact that it will break things during talk mode is also documented now

Start Spell Targeting node has been tweaked and gained some new options:
- You can allow the player to target opaque or antimagic spaces. In town mode, you can prohibit them from targeting antimagic spaces.
- You can specify a special node to be called if targeting fails because they selected an invalid space, or because an special node keyed to spellcasting context cancelled it
- You no longer get a "Hit 'p' to cancel" message. Even better, hitting 'p' does not cancel it. (Well, more precisely, it triggers the failure node, with the party's or pc's location as the target space.)

Misc:
- Fix crash outdoors due to trying to check for force barriers
2015-06-10 22:51:53 -04:00
f6be40618b Overhaul and improve force cages
- Add instant help message
- Prevent from ending town combat if one member is in a forcecage or if everyone's in a different forcecage (you can still end it if everyone's in the same cage)
- If entering town combat while caged, everyone remains in the cage
- Penalties to melee combat if the target or attacker is in a forcecage (higher penalties if the attacker is caged, unless they're using a pole weapon)
- Instead of placing a forcecage at every location where someone gains forcecage status, the game now syncs forcecages (placing them on locations where someone has forcecage status) at the end of the move.
- The Flash Step and Word of Recall spells and any specials that move the party also clear their forcecage status, so that a new forcecage won't appear on their new location. If they're moved into a forcecage, the syncing process will give them the status at the end of the move.
- Forcecage status now supported for the Occasional Status item ability
- Forcecages now eventually expire on their own even if you can't break out. Unoccupied ones also have a slight (0.1%) chance each turn to expire.
- Affect Status node now allows forcecage status. (It also works as documented, using Extra 1c rather than 2a as the status type.)
- Preset monsters placed in preset force cages gain the status at town initialization; it's a lot more than they'd gain through the syncing process, so unless they break free, it'll last a very long time.
- Monsters/PCs with spells (and PCs with Mage Lore) now have an increased chance of resisting entrapment in a forcecage
- If the full party is subject to a forcecage, the PC with the best chance of breaking free (assuming they don't resist) is chosen to determine whether they resist. Note that this may not be the PC with the best chance of resisting in the first place.
- Protection from Forcecage now implemented as an item ability
Other stuff (though related):
- Reset party's combat pos to the null location (-1,-1) after a cutscene ends; to not do so would mess up get_loc() calls
2015-06-10 11:45:14 -04:00
f149a85575 Fix newlines (again; missed some) 2015-06-08 23:55:17 -04:00
543ccdc670 Associate reserved pointers directly to their values, rather than referencing magic SDFs
- String buffer referencing is no longer done via a pointer but instead by a magic value separate from the pointer system (it's still -8 though)
- String buffer now stored in universe instead of scenario
2015-06-08 22:14:45 -04:00
aa5dfe4f69 Add two special nodes
- Node to make a monster target a specific PC or monster
- Node to force town entry from outdoors
2015-06-08 22:14:40 -04:00
58fbf3b287 Lots of monster stuff, particularly documenting monster abilities
- Monster radiate abilities can now specify a spell pattern to use
- Fix some abilities being incorrectly shown in the editor's ability details dialog (for example, radiate abilities were shown as "Summon aid")
- Add the recently-added monster missile types to the options offered in the editor
- Fix chance of activating not being editable for the martyr's shield ability
- Show the monster summoned for summoning abilities (finally!)
- Show the subcategory for unusual abilities (one of active, passive death)
- Fix the displayed percentage chance for summon abilities (the permille was shown instead)
- Fix incorrect action point display in the editor for the two recently-added monster missiles
- Fix crash when editing a missile ability
- Fix abilities page not showing the newly-added or recently-edited ability after exiting the detail/option dialog
- Fix pick monster button for summoning abilities being off by one
2015-06-06 21:03:35 -04:00
510da3cf72 Update terrain dialog and some other tweaks/fixes
- Fix documentation of how to format map graphics, to match the logic in the code
- Fix display of map graphics both on the automap and in dialogs
- Add Choose button to select the map graphic
- Fix the vanishing text bug again (this time it only triggered for fields with a single character in them)
2015-06-06 02:51:30 -04:00
80f95ba9ae Several bugfixes
- Fix light mask not rendering correctly
- Fix terrain-sourced lighting not being calculated on scenario load
- Fix light-removing items incorrectly applying their ability strength
- Fix smash patterns not affecting opaque tiles (such as mouldy walls)
- Fix monsters outside the light range not being rendered when fog is lifted
- Fix town timers not being cancelled when you leave town
- Fix non-existent outdoor wandering encounters sometimes triggering due to uninitialized data
- Hard-wrap some doc lines
2015-06-04 21:50:08 -04:00
5bcf220204 Add support for custom explosions with custom sound choice 2015-06-04 18:47:01 -04:00
3cc12f464f Increase limit on the length of the "Who Wrote" lines in scenario details 2015-06-03 20:57:27 -04:00
a51ab021f4 Add two new special nodes for cutscenes
- Node to change a monster's location (also works on party members)
- Node to temporarily place text on the map
- Fix the "lift fog" node
- Remove the optimization of only redrawing a terrain space if it has changed
2015-06-03 20:56:07 -04:00
1b754619dc Several more tweaks/fixes
- Missing special node opcodes
- Pass the party's (or in combat, the active character's) current location to special nodes triggered by timers
- Fix the set pointer node
- Fix terrain palette not correctly registering clicks while scrolled down
- Fix sheets not correctly being copied from the temporary files folder
- Fix monster abilities not being loaded from new scenarios
- Fix custom sheets not being reloaded if they have changed
- Documentation tweaks
2015-06-02 22:01:22 -04:00
2dee8e81f7 Add editor support for the new Affect special nodes 2015-06-01 14:59:14 -04:00
e0ff77060a Add several new Affect nodes.
- Alter monster statistics on the fly, including basic attacks
- Alter experience level and morale (the latter currently only works on monsters while the former might have strange results on PCs)
- Alter the contents of the player's soul crystal
- Forced Give node now has an option to force-equip the item
2015-06-01 14:20:11 -04:00
071e60023f Update documentation of rectangle and outdoor special nodes 2015-06-01 00:42:15 -04:00
245291edbf Update documentation of town special nodes, along with some minor fixes
- place_monster no longer places a monster if one is already there, except when special node forces it
- targeting node no longer moves to jumpto if an error occurs
- fix targeting and pattern nodes not appearing in the editor
2015-06-01 00:18:02 -04:00
fcd29fb2ac Fix scenario editor build and update data/docs regarding shop nodes 2015-02-03 13:53:03 -05:00
559663dd35 New special nodes to store/unstore PCs outside the party structure
- Stored PCs are lost when you leave the scenario
2015-02-02 14:18:30 -05:00
4f93e8ea5a Update special node and talking node strings/data for the new quest stuff
- Also, Update Quest node now uses the mess1/2 fields.
2015-02-02 11:38:36 -05:00
4efcb08932 Implement a quest system and job board
- The job board is loosely based on Exile III's job board; the dialog is converted from the one contained as a relic of E3 in BoE
- Quest system is loosely based on a mix of Exile III jobs and Blades of Avernum quests
- Talking to a monster (even a hostile one) can now trigger an arbitrary special node

Dialog engine:
- LED's now support wrapped labels
2015-02-01 01:30:15 -05:00
5364d9cb62 New spells that can be attached to items:
- Augmentation - gives one PC bonus hit points
- Nirvana - gives one PC negative dumbfounding and bonus spell points
- Icy Rain - like Firestorm, but cold damage
- Flame Aura - Damages spaces adjacent to caster
- Summon Aid - Like Summoning, but only summons one
- Major Summon Aid - Like Major Summoning, but only summons one
- Flash Step - Short-range teleport
- Fix Blade Aura spell not having refer and timing information; it also had the wrong ID (82 instead of 72
2015-01-30 17:12:16 -05:00
2de0b76454 Merge all the shopping talk nodes together into a single node type
Also:
- Fix items in magic shops respawning when re-entering the shop
- Remove unused food shop type
2015-01-30 12:56:01 -05:00
a64dc47425 Documentation: Update appendix on item abilities and about half the appendix on special nodes 2015-01-29 23:00:29 -05:00
f179e07251 Reformat editor appendices for better diffs 2015-01-29 17:01:04 -05:00
da00da261c Lots of updates to the editor documentation to reflect changes that have been made to the game.
- This update is not comprehensive. It does not touch the appendices, and even in the parts it does touch, many details may still be out-of-date.
2015-01-29 01:10:53 -05:00
81ed1e9656 Reformatting of editor documentation for better diffs, and correcting typos 2015-01-29 01:07:59 -05:00
a1c52d4e3c Make the special nodes appendix in the documentation readable
Note: This doesn't update the information in it to account for the various changes and new nodes.
2014-12-15 08:46:47 -05:00
Sylae Corell
e7d76c1a8e More cleanup of documentation.
git-svn-id: http://openexile.googlecode.com/svn/trunk@143 4ebdad44-0ea0-11de-aab3-ff745001d230
2010-02-07 20:54:56 +00:00
Sylae Corell
0438926188 Continued Editor Doc cleanup.
git-svn-id: http://openexile.googlecode.com/svn/trunk@141 4ebdad44-0ea0-11de-aab3-ff745001d230
2009-11-17 21:19:41 +00:00
Sylae Corell
f2639c0fb3 Began cleanup of editor docs.
-Added CSS and navbar from game docs.
-Performed basic cleanup of <head>.
-Fully cleaned up Contents.html, About.html

git-svn-id: http://openexile.googlecode.com/svn/trunk@140 4ebdad44-0ea0-11de-aab3-ff745001d230
2009-11-11 19:44:23 +00:00
6e2123b24a Uploaded the rest of the original Mac documentation. It still needs major cleanup though.
git-svn-id: http://openexile.googlecode.com/svn/trunk@106 4ebdad44-0ea0-11de-aab3-ff745001d230
2009-07-10 18:10:51 +00:00