User talk:Zaimoni

From UFOpaedia
Revision as of 03:17, 16 August 2006 by Zaimoni (talk | contribs)
Jump to navigation Jump to search

"Welcome to Base Aleph-NULL in Nigeria. We managed to get the Prince of Darkness off of the base planning committee, so Aleph-NULL is a real base. Base Continuum near Tokyo has just started construction.

And ETA for the first pair of UFOs is 14:30 sharp."


The redeeming feature of putting the first base in Nigeria is...it's nearly antipodal to Hawaii. Very good scummy Interceptor coverage for a single base. [Holes: Half of Australia, the entire Pacific Ocean, parts of Siberia and North America.] The second base completes scummy Interceptor coverage for all land masses of interest.

It's not like there shouldn't be an automatic alarm that goes off when UFO reports start coming in.

Zaimoni -- 9:11AM, 18 July 2006 (CDT)


Things to remember to do at some point (when work schedule not haywire):

  • probability of MC plane graph (not sure whether to do this manually, or write C++ programs to automate)
  • suite of Python game editing scripts; basically, cover holes in ClarkWehyr and XcomUtil editors. Curses module doesn't exist in Windows port; looks like it targets ncurses, which has not been ported to either Windows or DOS.
    • Base layout: automatically handle radar detection from radars
    • Battlescape saves: help out the AI (turn 1 alien facing, ROUTES.DAT fixups), probably will have to integrate with XcomUtil. Need to research LOS more carefully first.
    • Advanced two-player hotseat (individual visibility support, allow aliens to fire alien weapons, working explosives).

Zaimoni -- 10:23PM, 15 August 2006 (CDT)

Some working notes on advanced swap:

  • XcomUtil's default visibility hack is workable for the alien side (they're there first). Backup and restore SEEMAP.DAT to handle human visibility. [Done]
  • Need two backups for MISDATA.DAT: human and alien. Alien has all alien tech enabled. [Done.]
  • WGLOB.DAT probably can be automatically fixed when going from alien turn to human turn (backup when alien turn starts, then parse for changes and invert). [Done]
    • May want to do something about turn counters.
  • UNITREF.DAT experience counters cannot be automatically fixed for XCOM (they are not incremented in alien turn mode). Theoretically, they should be patched for alien units "just in case" (We have other reasons for backing up UNITREF.DAT).
  • Autoclosing doors can be dealt with (it appears that whatever closes them in-game is silent). While it would be nice to parse the MCD files, a lookup table of indices by terrain type will work.
  • One of the StrategyCore posts mentioned that hacking a Stun Rod into a Chryssalid enabled the native melee attack. Need to check whether this gives the native attack speed (14 TU?)...if so, can automate this directly (leaving only grenades to deal with).
  • Grenades, Alien Grenades, and melee aliens can be enabled as follows (to automate, need an environment that can inject mouse events into XCOM)
    • "anchor" the shooting aliens using various current/recovery energy hack
    • end the turn, then quit.
    • backpatch energy/TU/facing-related values into non-melee aliens
  • If replacing XcomUtil's SWP function outright:
    • be sure not to repair damaged armor.
    • Fatal wounds can be handled properly ("wraith" problem is from not updating the UNITPOS.DAT entry). Remember to force the health of dead units to 0 to prevent the resurrection bug post-battle.

Note that my local copy of XcomUtil is patched to use COPY /Y ... rather than COPY ...; this prevents waiting for an interactive prompt in a batchfile. [Default behavior doesn't work right in Win2000.] I got this from some thread in the xcomufo forums.

The simpler parts will be implemented in Python.

Prototype batchfiles:

Alienturn.bat

copy %1\wglob.dat %1\wglob.bak
copy %1\seemap.dat %1\seemap.hum
cd %1
python ..\AlienSWP.py
cd ..
xcomutil %1 SWP WRT
copy %1\misdata.al %1\misdata.dat

Humanturn.bat

cd %1
python ..\HumanSWP.py
cd ..
xcomutil %1 SWP WRT
copy %1\*.hum %1\*.dat

Zaimoni -- 10:20PM, 15 August 2006 (CDT)