Jannik Vogel
ae7b70bed9
Introduce realValue() to load script real from var or immediate automaticly
2016-06-27 01:44:50 +02:00
Daniel Evans
4ff4515ad7
add getModel to ScriptArguments to lookup script models
2016-06-25 20:39:01 +01:00
Daniel Evans
f2eaa05759
Improve integerValue function for script parameters
2016-06-25 20:38:38 +01:00
Christoph Heiss
4c2c42ef6a
Fix some OS X/Clang (build) errors.
...
For rwengine/src/engine/GameData.cpp, `#ifdef __unix__` is used, which
Clang on OS X does not define, thus not finding files while loading.
2016-05-20 16:28:47 +02:00
Daniel Evans
185ba23f05
Fix all compiler warnings in rwengine.
2016-04-28 00:54:42 +01:00
Daniel Evans
93bf5c6eed
Add more opcodes to fix unimplemented opcode crash
2016-04-10 22:27:44 +01:00
Daniel Evans
e2bd2b704e
Fix crash caused by thread clobbering
2015-07-09 18:29:38 +01:00
Daniel Evans
243bfb18a8
Overhaul breakpoint handling
2015-07-09 13:58:14 +01:00
Daniel Evans
4ce275c381
Improve debug server functionality and appearence
2015-07-06 00:54:13 +01:00
Daniel Evans
868883fd36
Add Debugger functionality
...
* Include Angluar JS for UI
* Improve styling slightly
* Add Interrupt/Continue buttons and api URLs
* List of threads when game is paused
2015-07-03 02:52:43 +01:00
Daniel Evans
bf1c8bb0ca
Fix crashes from mixing player / character references
2015-07-01 23:16:06 +01:00
Daniel Evans
49695a2dc6
Further game save loading
...
* Give object types individual id namespaces.
2015-06-24 01:48:26 +01:00
Daniel Evans
cd7bb3af15
Proof of concept loading save data from save files
2015-06-14 02:44:51 +01:00
Daniel Evans
a690c8c08c
Implement Script Disassembly
2015-05-03 18:09:25 +01:00
Daniel Evans
91065b6af4
Initial Save + Load implementation
...
* Fix VM Global Addressing
* Modify VM structures to simplify storage
* Add explicit GameWorld::createPlayer() method
* Move gameTime to GameState for storage
* Add SaveGame class for reading + writing
* New Dependancy: cereal
2015-05-03 05:23:44 +01:00
Daniel Evans
b6bd774a06
Fix ScriptMachine behaviour and global addressing
2015-05-01 06:28:39 +01:00
Daniel Evans
d4f0d7dc0d
Update VM var size, expose threads
2015-05-01 04:50:33 +01:00
Daniel Evans
85b9378ab0
Add documentation for ScriptMachine
2015-05-01 01:06:21 +01:00
Daniel Evans
968544ce48
Implement GameObject ID referencing within the VM
2015-04-30 16:08:23 +01:00
Daniel Evans
25f62a0a47
Refactor GameWorld into GameState
...
+ GameState now contains a GameWorld point to store the runtime world
data
2015-04-27 15:31:39 +01:00
Daniel Evans
e5e4345170
Document ScriptMachine debugging methods
2015-04-04 13:53:11 +01:00
Daniel Evans
159510cace
Add breakpoints to ScriptMachine, remove from GameWorld.
...
+ Adds breakpoints on program counter values to the ScriptMachine.
+ Adds breakpoint handler for acting on breakpoints
+ Remove GameWorld::script and make RWGame responsible for script
2015-04-04 03:12:28 +01:00
Daniel Evans
6a4afea4e6
Make it possible to start the 2nd Luigi mission
2015-01-27 15:02:10 +00:00
Daniel Evans
abb6576785
Add implementation for more generic pickups
2015-01-27 02:38:08 +00:00
Daniel Evans
185687b1b5
Add and improve functionality for first mission.
...
+ Improve GoTo activity behaviour, jumping to target.
+ Fixed crash on non-existing audio file
+ Added correct conditional flag to conditional opcodes
+ Fixed seat state on exit from non 0th seat
+ Implement many opcodes
2015-01-21 20:40:31 +00:00
Daniel Evans
eef4a2d87e
Move object script functions to seperate module
...
Not all script functions involving objects have been moved, some
further movement is expected.
2015-01-19 12:20:35 +00:00
Daniel Evans
39ff9df337
Refactor script system to bind named functions.
...
Replace ugly macros with named functions and binding to script modules
2015-01-16 02:32:31 +00:00
Daniel Evans
646d0c67fc
Improve Script debugging output messages
2014-12-15 20:44:36 +00:00
Timmy Sjöstedt
7dde2af9f3
Added <string> to ScriptTypes.
2014-08-16 00:21:12 +02:00
Daniel Evans
b1c82e3582
Fix compilation under clang, fix majority of warnings
2014-08-11 17:58:43 +01:00
Daniel Evans
8ae618913d
Implement more opcodes, fix behaviour in others
...
+ Fix Model reference offsets (indicated by negative values)
+ Fix Create Instance to use SCM models
+ Add Change instance model opcode
2014-08-01 15:00:36 +01:00
Daniel Evans
c0dc78eb2c
Refactor opcodes
2014-08-01 00:33:38 +01:00
Daniel Evans
3c665e7d2b
Add many opcodes, implement some of them.
...
+ Fix thread-relative jumps
+ GameObject::setHeading(degrees) sets object rotation from a heading.
+ Add More GameState from opcodes.
+ Decouple game hours from the engine clock
+ Add VehicleObject::setRotation()
+ Add GameWorld::getGroundAtPosition(pos) for OpCodes
+ Fix Handling of fixed-point SCM parameters
+ Update IngameState to use GameState::player if it exists
+ Add skip-time button to skip opening cutscene (F12)
2014-07-27 00:44:21 +01:00
Daniel Evans
fa3f2cc3ea
Add more opcodes, implement some
2014-07-25 03:38:47 +01:00
Daniel Evans
c3e2172f3b
Initial Script Machine implementation + some ops
2014-07-23 23:57:21 +01:00
Daniel Evans
e0a0c4882f
Refactor Script loading into engine
2014-07-21 00:34:28 +01:00