INTRODUCTION:

This archive contains WOS entity definition files for SinEd. They are simply
configuration files used by the editor to build its entity selection menu and
the entity dialog that enables you to set the relevant keys and spawnflags
for those entities.

The SiN V1.1 entity definition file was used as a starting point for this one
so all the info from it is included here. All I did was to add the WOS stuff.
Please note that a lot of the original SiN world objects, monsters, actors, etc.
not listed here have been enhanced with additional animation .sam files and extra
skins in WOS. Overwriting the SiN .def files with the WOS files of the same name
as well as unpacking all those new animations and skins from the WOS pak file into
SinEd's \tools\sin\base\models folder will make these animations and skins
viewable in the editor's 3D view. But be careful if you want to go back to making
regular SiN maps: those new animations and skins won't be valid in SiN even if
they're selectable from the editor and once you overwrite the files in the models
folder, there's no way to tell which is which afterwards. The only way to avoid this
confusion would be to flush the content of the \tools\sin\base\models folder,
re-unpack the original SiN pak file, move the extrated model files to the SinEd
models folder, delete the dead .def files and copy the updated .def files from
the entity definition files .zip archive to the models folder.

I also updated 1 .def file (camera.def) from the previous version distributed
in the SiN entity definition file archive but 2015 added new functionality to
it (a blinking red light). I you have unpacked the other .def files from the
SiN entity definition file archive (if you already have them) into your
\tools\sin\base\models folder then overwrite the previous camera.def with this one.

I didn't test the new entities as I'm reluctant to mix all the new models and def
files with the original SiN ones all in the same folder since afterwards I won't
be able to tell which ones belong to SiN and which ones belong to WOS. Sorry.
The only changes I will make to the WOS cpp file will be from user feedback.
I also included a wos_only.cpp file for those who would like to browse the file to
study the only the WOS entities without having to pick them out from the full EDF.

I hope these files help you figure how to set up the entities in your maps.
I'm open to suggestions and please, please, if you find errors, by all means,
don't hesitate to email me and let me know.

Eutectic (eutectic@ritualistic.com)


INSTALLATION:

1. Extract the file named wosedf12.cpp from this archive to your
   \tools\sin\base\code\game folder.

2. Extract the .def files to your \tools\sin\base\models folder and
   overwrite the older versions.

3. Edit your SinEd project file sample.sed in your \tools\sin\base\scripts
   folder and edit the "entitypath" statement so it points to the new file:

"entitypath"            "..\base\code\game\wosedf12.cpp"

4. Restart SinEd.


ADDITIONAL INFO:

I could have updated all the relevant .def files to add key information
but it didn't make much sense since there's over 400 of them. Instead, I
will resume here what couldn't be included elsewhere:

- All entities can be given a "targetname" key except pick-up-able items.

- Any item that can be picked up by the player can be given the
  "gravityaxis" key (values in the info_player_start comments).

- Any item that can be picked up by the player can be given the
  "thread" key. The thread is called when the item is picked up.

- Any entity that's visible in the game supports the "alpha" key.


CHANGE HISTORY

---- V1.0 ----

- SiN entity definition file V1.1 used as a starting point for this one.
- Notes and reformatting the info for the WOS specific entities added.
- camera.def updated from the previous version for SiN.

---- V1.1 ----

- info_player_hardcorps and info_player_sintek for CTF added.
- "angle" key added to func_scriptobject.
- updated spline.def : definition of "loop" key for info_splinepath corrected.
- updated rockturtop.def : typo correction in Notes plus additional info.
- updated camgun2.def : typo correction in Notes.
- definition of "height" key for func_camera and func_securitycamera corrected.
- default value of "radius" key for lensflare corrected. Notes added.
- definition of the "lightstyle" key for lensflare corrected.
- "target" key and Notes added to waypoint.
- func_beam beamstyles updated.
- fixed problem with rockturtop.def displaying wrong model for trap_rocketturret.
- added "sighttarget" and "sightthread" keys to trap_rocketturret (rockturtop.def).
- added "sighttarget", "sightthread", "patience" and "lagtime" keys to
  trap_securityturret (turtop.def).
- added "noise" key for all trigger entities which also support message key.
- improved definition of "message" key for triggers to be relevant to "noise" key.

---- V1.2 ----

- added "noise" key to func_door, func_exploder, func_explodingwall,
  func_multi_exploder, func_rotatingdoor, func_scriptdoor, inventory_genericpulsepart
  and misc_oxygen since those also support the "message" key.
- added a corrected version of batlow.def to the entity definition set: the entity is
  already NOT_SOLID and NOT_DAMAGEABLE by default. The spawnflags were removed since
  the default makes them useless.
- added "scale" key and removed NOT_SOLID and NOT_DAMAGEABLE spawnflags (which make no
  sense for pickup-able items) from inventory_genericpulsepart.
- added corrected versions of all 25 inventory_* .def files in which all the relevant
  keys were added and the NOT_SOLID and NOT_DAMAGEABLE spawnflags (which make no sense
  for pickup-able items) were removed.
- added corrected version of u4.def (Powerup_U4) with an accurate description (only a
  static object) and the inclusion of the NOT_SOLID and NOT_DAMAGEABLE spawnflags & the
  "targetname" key
- added corrected versions of sledgeham.def (weapon_sledgehammer), stun.def (weapon_stun)
  and wrench.def (weapon_wrench) with accurate descriptions (only static objects) and
  the inclusion of the NOT_SOLID and NOT_DAMAGEABLE spawnflags for each & the "targetname"
  key.
- added corrected versions of cpu_keyboard_use.def (deskitems_cpu_keyboarduseable) and
  cpu_monitor_use.def (deskitems_cpu_monitoruseable). Since these entities are already
  not destructible by default, the NOT_DAMAGEABLE spawnflag was removed.
- added corrected versions of sink.def (world_sink), toilet.def (world_toilet) and
  urinal.def (world_urinal). Since these entities are sentients and not objects, the
  NOT_SOLID and NOT_DAMAGEABLE spawnflags don't apply and were removed.
- added corrected versions of all 17 gib_* .def files in which all the relevant keys
  were added as well as the NOT_SOLID and NOT_DAMAGEABLE spawnflags.
- added corrected versions of all 10 Projectile_* .def files in which all the relevant 
  keys were added as well as the NOT_SOLID and NOT_DAMAGEABLE spawnflags.
- added corrected versions of all 11 trap_* .def files in which many relevant keys
  were added and incorrect ones were removed. The NOT_SOLID and NOT_DAMAGEABLE spawnflags
  were added to claymore.def (trap_claymore), dynamite.def (trap_dynamite),
  launcher_base.def (trap_missilelauncher_base), launcher.def (trap_oldlauncher),
  rockturbase.def (trap_rocketturret_base) and turbase.def (trap_securityturret_base).
- added corrected versions of all 19 vehicles_* .def files in which many relevant keys
  were added and incorrect ones were removed. The NOT_SOLID and NOT_DAMAGEABLE spawnflags
  were removed from atvtire_back.def (vehicles_atv_backtire), atvtire_front.def
  (vehicles_atv_fronttire), humv_back_tire.def (vehicles_humv_backtire) and
  humv_front_tire.def (vehicles_humv_fronttire). The NOT_DAMAGEABLE spawnflag was removed
  from atv.def (vehicles_atv), bulldozer.def (vehicles_bulldozer), forklift.def
  (vehicles_forklift), hcboat.def (vehicles_HCBoat), lamprey.def (vehicles_lamprey) and
  lamprey_sintek.def (vehicles_lamprey_sintek).
- added "surfacefile" key to worldspawn entity.
- added corrected versions of all 16 fx_* .def files in which many relevant keys
  were added and incorrect ones were removed. The NOT_SOLID and NOT_DAMAGEABLE spawnflags
  were added to laser.def (fx_laser). The NOT_SOLID spawnflag was added to all the model
  based fx_* entities : sphere.def, sphere2.def, sphere3.def (fx_explosion),
  muzflash1.def (fx_muzzleflash), muzflash2.def (fx_muzzleflash2), beam.def
  (fx_pulsebeam), beam2.def (fx_pulsebeam2), ln.def (fx_pulseline) and psphere.def
  (fx_pulsesphere).
- added "scale" and "targetname" keys to fx_fire.
- removed "color" key and added "angle", "model" and "targetname" keys to fx_sprite
  (fxsprite.def).
- the START_OPEN spawnflag was removed from func_door, func_rotatingdoor and
  func_scriptdoor since it doesn't work. The OPEN_DIRECTION spawnflag was removed from
  func_rotatingdoor since it doesn't work.
- the HURT_SHATTER spawnflag was removed from func_glass and func_shatter since it
  doesn't work.
- added the NOT_SOLID and NOT_DAMAGEABLE spawnflags to func_throwobject.
- the NOT_PLAYERS spawnflag was removed from trigger_camerause since it doesn't work.
