Dungeon Siege 2: Mod ReadMe
___________________________
Mod Title: my_test_world http://www.siegetheday.org/files/ds2_my_test_world-0.9.zip
Author(s): Sharkull
Mod Version Number......................: 0.9 Beta
Release Date............................: Feb.18,`06
Mod Size (approx.)......................: 0.35 MB
Contact Information (email / forum...)..: I can be reached through the forums at http://www.siegetheday.org
Web Site (for the mod / author...)......: -
Revision History:
0.9 - Initial beta release
Quick Installation Instructions:
1. Install the components of the DS2TK that you want to use (SE2 for mapping, DS2Mod for playing...). Remember to make sure that your DS2 Resources directory has only GPG's tanks (logic, movies1, movies2, objects, sound1, sound2, terrain and voices.ds2res).
2. Copy the file MyTestWorld.ds2map into \My Documents\My Games\Dungeon Siege 2 Mod\Maps\
3. Copy the file MyTestWorld.ds2mod into \My Documents\My Games\Dungeon Siege 2 Mod\Mods\
4. If you want to work with the contents of these files (using SE2 or DS2Mod), use Tank Viewer 2 to untank these two files into: \My Documents\My Games\Dungeon Siege 2 Mod\Bits\
5. Play using the DS2Mod exe.
(Advanced details for more complex configurations can be found later in this document.)
Quick Uninstall Instructions:
1. Delete the file: my_test_world.ds2mod
2. Delete the file: my_test_world.ds2map
********************************************************************************
* Requirements / Compatibility
Dungeon Siege 2 Version.........................: 2.2
Other requirements (other mods, expansion...)...: Intended to be used with DS2Mod / DS2TK (v1.1+).
Windows only (uses ds2dll or custom installer)..: No
Language .......................................: -
Known Bugs......................................: None
********************************************************************************
* Mod Details
Single Player only mod..........................: No
Multi-Player only mod...........................: No
New / Modified Difficulty Settings..............: No
New / Modified Graphics.........................: I did add one inventory image
New / Modified Sounds / Music...................: No
New / Modified Weapons..........................: Yes (for testing only)
New / Modified Armor............................: Yes (for testing only)
New / Modified Spells...........................: No
New / Modified Misc. Items (Rings, Amulets...)..: No
New / Modified Character(s) / Pets..............: No
New / Modified Enemy Type(s)....................: No
Modified Experience / Attribute System..........: No
Modified Loot Drops.............................: No
Modified GUI....................................: No
Modified / Custom Map...........................: Yes!
Modified Other..................................: -
Modding Tools Used..............................: DS2TK v1.1, Notepad, RawToPSDGUI, DDSConverter 2 and GIMP 2.
Modified files :
(example - logic\world\contentdb\pcontent.gas)
No files were *modified*... I took efforts to ensure that what I did wouldn't affect DS2_World play. All content I created was put into new files, and I created new item / actor templates instead of modifying existing ones.
-
********************************************************************************
* Credits
Some content provided by........................: -
Modding advice received from....................: Many helpful folks! Mostly via the forums at www.siegetheday.org, and the GPGarage.
Tested by.......................................: -
Other Credits...................................: -
********************************************************************************
* Distribution
This mod may be freely distributed, as long as this readme file and all related content is included.
********************************************************************************
* Permissions (pertains to non-profit usage only):
_Yes_ Permission is given to re-use this mod's content without restrictions. (Open source)
_____ Permission is given to re-use this mod's content, as long as credit is given to the original content author(s). (Open source)
_____ Contact the author(s) for permission before re-using any content included in this mod. (Open source)
_____ A separate licence is included with this mod, and all permissions are described there in detail.
_____ No permission to re-use this mod's content is given by the author(s). (Not open source)
********************************************************************************
* Copyright:
All title and intellectual property rights to the content of this mod are the property of the respective content owner and may be protected by applicable copyright or other intellectual property laws and treaties.
(c) 2002-2005 Gas Powered Games Corp. All rights reserved. Gas Powered Games, the GPG logo, and Dungeon Siege are the exclusive trademarks of Gas Powered Games Corp.
********************************************************************************
* Disclaimer:
The author(s) of this mod accepts no responsibility for damage to data, or physical damage to hardware, caused by the appropriate or inappropriate use of this mod. Use this mod at your own risk.
********************************************************************************
* Further Details / Instructions:
This map + mod file is intended to be a resource for modders, as an aid for mod development / testing. You can "play" it, but you should know that it was not my intention to provide a balanced gameplay experience at all.
Features:
* One big field... boring scenery (it was never meant to be a playable / adventure map).
* Access to all three world levels (Mercenary, Veteran and Elite) within this map. (Note: getting a character to Veteran / Elite in my_test_world will NOT unlock Veteran / Elite for the DS2_World map).
* Two teleporters (one at each side of the field).
* A simple functioning example "quest" which you can complete to unlock the next world level (also gives a 3 skill point reward, and activates the second teleporter without having to walk over to it).
* A functional stash.
* A trigger to completly fill the journal's Handbook as soon as you join the map.
* A lever which activates two macros to give you all the newbie gear from ds2_world.
* A lever (tiki statue) which gives 1,000,000 gold and some potions... walk far enough away, and it resets itself so you can reuse it (this is also a custom macro, so it is an easy way to get items into the game for testing).
* A necromancer (corpse master).
* A enchantress.
* A Innkeeper.
* A recruitable NPC.
* A merchant (indicated by the crossed swords icons in game) who sells all potions, spells, "crafted" items (preconfigured rares) and reagents in the game (plus a variety of random stuff...).
* A second merchant (indicated by the shield icons in game) selling custom armor / weapons for use in mesh / animation testing. There are examples of every armor type (6 types of boots, 7 types of gauntlets, 5 types of suits and 25 helmets) plus one of each base weapon type (16), all of which are free and without equipping requirements. One item for sale here has a new inventory image.
* A pet seller (all pets available).
* When you expand the size of your party, your journal's beastiary tabs are completely filled (pets included).
* A lectern which gives all the chants (but only ones that normally show up in your journal... so the "mysterious mystery" chants are not included).
* A few Incantation Shrine's (one as a building, the rest are just placed on the grass... all should be fast recharging).
* An attack dummy and a stationary target for attack animation testing.
* A working mini-map (with the images converted to DDS format to decrease the file size).
* Flexible camera angles.
* Uses a GPG "mood" that has the fog pushed back quite far.
* A virtually unkillable Harpy (NW corner of the map) which does tiny amounts of damage, but gives a ton of experience (for fast and safe levelling).
* Over twenty mushroom switches that spawn 3-4 monsters of different levels (should be challenging if someone chooses to try and play through them all... I mostly used mini-bosses). Each can be used multiple times (10,000 times each to be exact). The first mushroom (summons 3 Braken Defenders and one Forest Golem) is near the center of the map (where the trigger for completing the quest is), and the rest are ordered in rows, the first row starting in the central East part of the map and then progressing North... The description of each switch indicates what it summons.
* A switch that activates a very special pillow fight (WSW on the map).
* A set of switches (SW corner of the map) that each summons one of the evil NPC characters from the Mysterious cave. Think you're good? Try taking them all on at once... :P
* The tanks were created with SE2, and I chose not to include the .lqd22 files to keep the download size reasonable...
********************************************************************************
* Advanced installation comments (not instructions really...):
SE2 and DS2Mod don't like any non-GPG resource files in the game's regular Resources directory (eg. C:\Program Files\Microsoft Games\Dungeon Siege 2\Resources\). Fortunately there are ways to get around this problem (and I'll explain one). The version of DS2Mod that comes with DSTK v1.1 has a new feature which allows you to have multiple ini files for multiple mod playing / testing setups. If you look in the DS2TK's user files (by default: \My Documents\My Games\Dungeon Siege 2 Mod\...) you should find the default ini: "DungeonSiege2.ini" (not to be confused with the ini in \My Documents\My Games\Dungeon Siege 2\, which is for the retail game exe). If you set up a shortcut to DS2Mod with the "configfile=..." flag, you can tell DS2Mod to use another ini (I'll explain why this is useful below).
So, for example you could have a shortcut with the following target field:
"C:\Program Files\Dungeon Siege II Tool Kit\DungeonSiege2Mod.exe" configfile=playds2mod loadanysave=true
This indicates that I want to start DS2Mod using an alternate ini file (playds2mod.ini) and enable the loadanysave feature (more on this below). Why is this so special? Well, in this manner you can set up separate multiple mod environments using a large number of target line parameters. The Windows target field has a character limit, but using a custom config file removes that limit. So we can set up alternate path's for map files, bits, mod files, resources, save files... as well as configure some extra parameters like skipping the opening movies, and using a custom resolution within a window (instead of fullscreen). Just set up a shortcut & ini for each different environment you want to set up. Here's an example of an ini file I use for playing mods: playds2mod.ini (your's will be different).
driver_description = ASUS A9600 Series
mp_active_party = Sharkull
last_good_cdrom = W:\
sp_last_saved_party = Sharkette
regrequest_sp = true
optout = true
width = 1024
height = 768
bpp = 32
x = 38
y = 38
nointro = true
noloadintro = true
bits = !%user_path%\MyMods\nobits
mod_paths = !%user_path%\MyMods
save_path = "%user_path%\MyMods\save"
map_paths = "%user_path%\MyMods\maps"
sp_active_party = Sharkette
Notes / Tips:
- %user_path% is an alias for \My Documents\My Games\Dungeon Siege 2 Mod\
- Use double quotes around any paths that contain spaces (the quotes in my examples aren't necessary).
- The exclamation point (!) indicates that all other paths for this setting should be overridden with this one (replacing the other path/paths, instead of adding to it/them).
- mod_paths are for .ds2mod files, and res_paths are for .ds2res files. Never use an exclusive path (!) for res_paths because access to GPG's resource files is always required.
- loadanysave=true is a very useful flag... it allows you to use save games from any mod configuration (i.e. it turns off the CRC for loading save games). Beware that this may cause problems (if you've removed a mod, or two mods are causing a conflict) if your character file requires specific resources within a mod (such as a custom item) and that resource is not available when you try to load a save game (DS2Mod will crash).
- If you want to test in a window (instead of full screen), add in the flag: fullscreen=false
- To get a list of the active paths within DS2Mod, type in "system paths" (without the quotes) at the console (accessed via the ~ key).
- If you change your save_path, you may want to copy current.gas (key bindings) and prefs.gas (other misc. settings) into your new save folder if you've made extensive customizations.
- To play mods using DS2Mod (or for testing tanks), make sure that your "bits" path is empty (for performance and consistency). The easiest way to do this is to specify a bits path which is an empty folder.
- AFAIK DS2Mod save games will not work with the retail exe, so if you copy your retail saves over for use with DS2Mod you should know that it is a one way trip.
- The NPC starts with a spell "Minor Resurrect" (also for sale by the main merchant) which will not be saved... this is not a bug (GPG designed the spell that way).
********************************************************************************
* Files within the my_test_world.ds2mod, and what each contains:
\world\contentdb\pcontent\macros\my_test_world_macros.gas
[my_test_world_magical_tiki_statue]
- Specifies the items dropped by the tiki statue switch.
\world\contentdb\templates\actors\good\my_test_world_npc.gas
[t:template,n:my_test_world_npc1]
- The recruitable NPC's template.
\world\contentdb\templates\actors\good\npc\my_test_world_vendors.gas
[t:template,n:my_world_vendor1]
[t:template,n:my_world_vendor2]
[t:template,n:my_world_petseller1]
[t:template,n:my_world_enchanter1]
[t:template,n:my_world_innkeeper1]
[t:template,n:my_world_corpse_master1]
- Various actor templates
\world\contentdb\templates\interactive\my_test_world_junk_armor.gas
[t:template,n:my_test_world_amr_bdy_a1]
[t:template,n:my_test_world_amr_bdy_a2]
[t:template,n:my_test_world_amr_bdy_a3]
[t:template,n:my_test_world_amr_bdy_a4]
[t:template,n:my_test_world_amr_bdy_a5]
[t:template,n:my_test_world_amr_bot_01]
[t:template,n:my_test_world_amr_bot_02]
[t:template,n:my_test_world_amr_bot_03]
[t:template,n:my_test_world_amr_bot_04]
[t:template,n:my_test_world_amr_bot_05]
[t:template,n:my_test_world_amr_bot_06]
[t:Template,n:my_test_world_amr_glv_01]
[t:Template,n:my_test_world_amr_glv_02]
[t:Template,n:my_test_world_amr_glv_03]
[t:Template,n:my_test_world_amr_glv_04]
[t:Template,n:my_test_world_amr_glv_05]
[t:Template,n:my_test_world_amr_glv_06]
[t:Template,n:my_test_world_amr_glv_07]
[t:template,n:my_test_world_amr_hlm_01]
[t:template,n:my_test_world_amr_hlm_02]
[t:template,n:my_test_world_amr_hlm_03]
[t:template,n:my_test_world_amr_hlm_04]
[t:template,n:my_test_world_amr_hlm_05]
[t:template,n:my_test_world_amr_hlm_06]
[t:template,n:my_test_world_amr_hlm_07]
[t:template,n:my_test_world_amr_hlm_08]
[t:template,n:my_test_world_amr_hlm_09]
[t:template,n:my_test_world_amr_hlm_10]
[t:template,n:my_test_world_amr_hlm_11]
[t:template,n:my_test_world_amr_hlm_12]
[t:template,n:my_test_world_amr_hlm_13]
[t:template,n:my_test_world_amr_hlm_14]
[t:template,n:my_test_world_amr_hlm_15]
[t:template,n:my_test_world_amr_hlm_16]
[t:template,n:my_test_world_amr_hlm_17]
[t:template,n:my_test_world_amr_hlm_18]
[t:template,n:my_test_world_amr_hlm_19]
[t:template,n:my_test_world_amr_hlm_20]
[t:template,n:my_test_world_amr_hlm_21]
[t:template,n:my_test_world_amr_hlm_22]
[t:template,n:my_test_world_amr_hlm_23]
[t:template,n:my_test_world_amr_hlm_24]
[t:template,n:my_test_world_amr_hlm_25]
[t:template,n:my_test_world_shield1]
[t:template,n:my_test_world_shield2]
- Armor and shield templates for stuff sold by the junk vendor (intended for use in mesh / animation testing).
\world\contentdb\templates\interactive\my_test_world_junk_weapons.gas
[t:template,n:my_test_world_ax_1h]
[t:template,n:my_test_world_ax_2h]
[t:template,n:my_test_world_bw_sb]
[t:template,n:my_test_world_cb_me]
[t:template,n:my_test_world_ce_ar]
[t:template,n:my_test_world_cl_1h]
[t:template,n:my_test_world_dg_1h]
[t:template,n:my_test_world_gorski_bolt]
[t:template,n:my_test_world_gorski_gun]
[t:template,n:my_test_world_hm_1h]
[t:template,n:my_test_world_hm_2h]
[t:template,n:my_test_world_mc_1h]
[t:template,n:my_test_world_sd_1h]
[t:template,n:my_test_world_sd_2h]
[t:template,n:my_test_world_st_ft]
[t:template,n:my_test_world_st_mg]
[t:template,n:my_test_world_th_kn]
- Weapon templates for stuff sold by the junk vendor (intended for use in mesh / animation testing).
\world\contentdb\templates\interactive\my_test_world_lectern.gas
[t:template,n:lectern_glb_all_chants]
- The template for the "all chant" lectern.
\world\contentdb\templates\interactive\containers\ctn_my_test_world.gas
[t:template,n:gen_pcontent_my_test_world_magical_tiki_statue]
- The container object needed for dropping the items specified in the macro...
\world\global\flick\sequences\my_test_world\big_field\big_field_innkeeper_talk.flick
[big_field_innkeeper_talk]
- Contains all the innkeeper's logic for expanding party size... plus the additional stuff I added to fill in the journal's Bestiary information.
\world\global\flick\sequences\my_test_world\big_field\my_corpse_summoner_talk.flick
- Contains the necromancer's logic for testing to see if your party has a corpse (for potential resurrection).
\world\global\flick\sequences\my_test_world\big_field\my_test_world_npc1_talk.flick
- Turns off the "invincible" flag for the NPC when he is recruited.
\world\global\flick\sequences\my_test_world\big_field\my_test_world_quest.flick
[pq1_t1_activate]
- Act, Quest and Task activation...
[pq1_t1_stand_on_rug]
- Act, Quest and Task completion, plus setting the global flag to open the next world level and activating the second teleporter.
\art\bitmaps\gui\in_game\inventory\weapons\shields\b_gui_ig_i_w_shd_azunai.dds
\art\bitmaps\gui\in_game\inventory\weapons\shields\b_gui_ig_i_w_shd_azunai.gas
[t:tsd,n:b_gui_ig_i_w_shd_azunai]
- The picture and template for a custom inventory image (not sure if the template is necessary, but it seems to work this way).
********************************************************************************
* Some key files within the my_test_world.ds2map, and what it contains:
\world\maps\my_test_world\info\handbook_info.gas
- The journal's handbook... copied from GPG's map.
\world\maps\my_test_world\info\lorebook_info.gas
[t:table,n:lore_table]
- DS2's Chants listing... copied from GPG's map.
\world\maps\my_test_world\info\monsterbook_info.gas
[t:table,n:monster_table]
- DS2's Bestiary... copied from GPG's map (with one minor change to enable information for the wounded version of Talon).
\world\maps\my_test_world\info\questbook_info.gas
[questbook_info]
- Act / quest structure for the map.
\world\maps\my_test_world\info\shops.gas
[my_test_world_super_store]
[my_test_world_junk_store]
- "shop_specifications" for the two merchants in the map.
\world\maps\my_test_world\regions\big_field\conversations\conversations.gas
[my_corpse_summoner_base]
[my_corpse_summoner_nocorpse]
[my_enchanter1]
[my_innkeep_base]
[my_innkeep_base_mp]
[my_innkeep_bought_3rd_slot]
[my_innkeep_bought_4th_slot]
[my_innkeep_bought_5th_slot]
[my_innkeep_bought_6th_slot]
[my_innkeep_buy_3rd_slot]
[my_innkeep_buy_4th_slot]
[my_innkeep_buy_5th_slot]
[my_innkeep_buy_6th_slot]
[my_innkeep_cant_afford_party_slot]
[my_innkeep_max_slots]
[my_petseller1]
[my_vendor1]
[my_vendor2]
[conversation_my_test_world_npc1_accept]
[conversation_my_test_world_npc1_disband] - (not used?)
[conversation_my_test_world_npc1_disband_rejoin]
[conversation_my_test_world_npc1_join]
[conversation_my_test_world_npc1_reject]
[conversation_my_test_world_npc1_rejoin]
- All conversation details for every character in the map.
\world\maps\my_test_world\regions\big_field\radar\*.dds
- These are the mini-map images which I converted from the SE2 produced .raw files to .dds format.
********************************************************************************
* Tip for modders:
There are two quick ways to easily put items into the map... (each requires you to untank the resource / map file for editing).
1. Add the item template names you want into the tiki statue's macro (\world\contentdb\pcontent\macros\my_test_world_macros.gas) using the potions as examples for syntax.
2. Add the item template names you want into one of the merchant's inventory (\world\maps\my_test_world\info\shops.gas) using any non-random entry as an example for syntax.
********************************************************************************
********************************************************************************