Commit Graph

929 Commits

Author SHA1 Message Date
Daan Vanden Bosch
1a1a52bd43 Seaside area at night variant 1 can now be used to add a second tower map. 2019-08-12 17:55:04 +02:00
Daan Vanden Bosch
29b2e754dd Fixed float parsing bug in assembly lexer. 2019-08-12 17:18:42 +02:00
Daan Vanden Bosch
6c17c36b61 Split NPC counts off into its own dockable component. 2019-08-11 21:59:36 +02:00
Daan Vanden Bosch
66127253d3 Split code into one module per tool + core and application module. 2019-08-10 22:09:06 +02:00
Daan Vanden Bosch
cf1cd26c41 Fixed a bug in area variants computation. 2019-08-10 19:37:34 +02:00
Daan Vanden Bosch
ecbab0637d Area variants now change automatically when bb_map_designate instructions are added, deleted or changed. The 3D view also updates automatically. 2019-08-10 18:11:27 +02:00
Daan Vanden Bosch
2d551a1951 Separated most of quest domain models from quest parsing code and made quest parsing data structures more structured cloning-friendly. All areas for the quest's episode are now shown in the area selector with the number of entities in them in parentheses. 2019-08-10 00:27:57 +02:00
Daan Vanden Bosch
48f0d5157d Renamed buildweb to build. 2019-08-08 15:50:18 +02:00
Daan Vanden Bosch
7cfcf5222c Script editor now supports line comments. 2019-08-08 11:02:06 +02:00
Daan Vanden Bosch
269b9cbd25 Removed unnecessary default quest character. 2019-08-07 22:31:02 +02:00
Daan Vanden Bosch
48b683f514 Fixed .qst embedded file naming bug. Implemented simpler PRS compression algorithm that seems to cause fewer errors during roundtrip tests. 2019-08-07 22:28:03 +02:00
Daan Vanden Bosch
194df177ab When creating a new quest and saving it, the filename of a quest that was loaded earlier was shown. This is now fixed. 2019-08-07 14:22:47 +02:00
Daan Vanden Bosch
c8ae97d8f6 Fixed bug in assembler. 2019-08-07 13:57:59 +02:00
Daan Vanden Bosch
d32c56ed02 Improved quest unit test. 2019-08-07 09:03:25 +02:00
Daan Vanden Bosch
fbef785410 Refactored opcode types to make them structurally clonable. 2019-08-07 08:43:47 +02:00
Daan Vanden Bosch
b928738d06 Float literal arguments passed via the stack are now handled correctly in the assembler and disassembler. 2019-08-06 17:37:34 +02:00
Daan Vanden Bosch
d3efe94837 Started working on a quest script VM. It has a call stack, supports threading, waiting for vsync and can execute some instructions at the moment. 2019-08-06 17:07:12 +02:00
Daan Vanden Bosch
054b1c99fb Fixed bugs in DFA code. All dynamic label references are now detected unless they're computed in a way which is too complex to analyse at the moment. 2019-08-06 01:14:57 +02:00
Daan Vanden Bosch
9284cf4a8a Fixed assembler bug related to arg_pushr. 2019-08-05 22:33:07 +02:00
Daan Vanden Bosch
2fc55cdc1a Dynamically referenced object code segments are now parsed correctly. 2019-08-05 16:56:39 +02:00
Daan Vanden Bosch
1ba7d3b6a7 All bugs resulting from opcode typing changes have been fixed. 2019-08-05 00:14:39 +02:00
Daan Vanden Bosch
dbe1b06fa6 Only one bug remains after opcode typing changes. 2019-08-04 22:59:32 +02:00
Daan Vanden Bosch
8e5472044b Fixed most issues resulting from opcode typing changes. 2019-08-04 19:50:02 +02:00
Daan Vanden Bosch
7aefdb688c Opcode code is now generated from yaml definitions. 2019-08-04 17:52:01 +02:00
Daan Vanden Bosch
e1d1cf564f Basic opcode definitions are done. 2019-08-04 16:01:44 +02:00
Daan Vanden Bosch
fba6ac3e10 Created yaml file with opcode definitions (70% complete). 2019-08-03 23:23:55 +02:00
Daan Vanden Bosch
83d32dfe99 Added basic algorithm to compute the possible values of a register at a specific program point. 2019-08-02 00:13:19 +02:00
Daan Vanden Bosch
76c3169fd3 Added ValueSet, an efficient integer set. 2019-08-01 19:37:26 +02:00
Daan Vanden Bosch
d9ff4308e0 Added control flow graph creation algorithm. 2019-07-31 21:37:17 +02:00
Daan Vanden Bosch
ccb31854c3 Object code is now parsed recursively from its entry labels to ensure all segments are parsed as the correct type. 2019-07-30 23:15:23 +02:00
Daan Vanden Bosch
a1cec18636 Fixed bugs in assembler. 2019-07-30 16:39:50 +02:00
Daan Vanden Bosch
8895579d18 Added FEATURES.md. 2019-07-30 15:19:03 +02:00
Daan Vanden Bosch
7d89c870cc Fixed bugs in bin object code parsing and the assembler. 2019-07-29 23:46:11 +02:00
Daan Vanden Bosch
1da64b8632 Data segments are now supported in quest script assembly. 2019-07-29 21:59:16 +02:00
Daan Vanden Bosch
3edb861693 Object code and labels are now represented by segments. Each segment describes the instructions or data denoted by a label. 2019-07-29 01:02:22 +02:00
Daan Vanden Bosch
f95e7ea220 All unit tests pass again. Removed dependency on text-encoding. Refactored cursors to reuse more code. 2019-07-27 21:47:49 +02:00
Daan Vanden Bosch
4eeda19837 Jest tests are working again. 2019-07-27 17:13:00 +02:00
Daan Vanden Bosch
e859477727 Linting works again. Static asset generation is working as before but has been bugged since an earlier change. 2019-07-27 15:40:30 +02:00
Daan Vanden Bosch
d5bfa67d82 Ejected from create-react-app. Development server and production builds are working. Using css modules now. 2019-07-27 01:49:19 +02:00
Daan Vanden Bosch
f86a895900 Made most simple quest properties editable. 2019-07-25 22:43:27 +02:00
Daan Vanden Bosch
7f4569d40a Fixed bug in assembly worker. Improved undo stack management in quest editor. Improved robustness of quest editor layout persistence. 2019-07-25 17:02:35 +02:00
Daan Vanden Bosch
7f404ff35a Fixed bug in quest editor UI persister. 2019-07-24 23:28:22 +02:00
Daan Vanden Bosch
50eaf43082 Script editor is now readonly if no quest is loaded. Fixed a bug in the assembly worker. Fixed wrong opcode. 2019-07-24 22:53:20 +02:00
Daan Vanden Bosch
1d253e78f8 Bin files are now parsed completely. Fixed bugs related to global key binds. The URL hash is now used for remembering which tool is active between browser refreshes. 2019-07-24 22:15:38 +02:00
Daan Vanden Bosch
7f34ed9d69 Changing an entity's position via the entity info component now results in an action on the undo stack. 2019-07-24 20:47:20 +02:00
Daan Vanden Bosch
5bd8feb766 Script editor undo is now integrated with general undo system. 2019-07-24 20:10:34 +02:00
Daan Vanden Bosch
c0e3ac924a Improved global keybind handling. General quest editor undo stack is now disabled when the script editor is focussed. 2019-07-24 18:07:32 +02:00
Daan Vanden Bosch
52376193ae Quest editor layout is now persisted. 2019-07-24 16:44:17 +02:00
Daan Vanden Bosch
25b7a4869b Fixed bug with golden layout. 2019-07-24 15:53:18 +02:00
Daan Vanden Bosch
11c00e1af7 Fixed bug that would let the camera pan when pressing arrow keys anywhere. 2019-07-24 15:48:39 +02:00