View Issue Details

IDProjectCategoryView StatusLast Update
0005316The Dark ModDesign/Codingpublic27.07.2021 14:59
Reporterstgatilov Assigned Tostgatilov  
PrioritynormalSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
Product VersionTDM 2.08 
Target VersionTDM 2.09Fixed in VersionTDM 2.09 
Summary0005316: Hot reload feature
DescriptionIt would be great to implement some sort of hot reload.
So that e.g. mappers could more entities in the map and load changes into the game without restarting them.
Of course, it is going to be some limited system, but still.
Additional InformationFirst dev discussion here:
  https://forums.thedarkmod.com/index.php?/topic/20486-hotreload-experiment/

Discussion about DarkRadiant integration:
  https://forums.thedarkmod.com/index.php?/topic/20493-connection-to-tdm-with-automation
TagsNo tags attached.

Relationships

related to 0005683 resolvedstgatilov Support more properties in hot-reload 

Activities

stgatilov

stgatilov

31.07.2020 13:47

administrator   ~0012702

Committed the first version in svn revs 8906-8909.
stgatilov

stgatilov

22.08.2020 10:30

administrator   ~0012748

A bunch of new changes in SVN.

First of all, a small bugfix:
  r8940. Fixed bug in idMapEntity::NeedsReload, which caused every spawnarg to be considered modified.

The next is a "respawn" command, which is strangely missing from stock D3 commands.
  r8941. Implemented "respawn" console command. It is given a name of a map entity to be respawned.
There is very useful "spawn" command, which is given entityDef name and spawns a text entity of that class in front of you.
The "respawn" command is very different: it is given a name of entity in map file.
This entity is killed in-game if it exists, and then spawned freshly from map entity.
Note that respawning an entity is one of the ways to handle modified entities in hot-reload feature, so having this command for quick testing would be helpful.

But the most important changes are:
  r8942. Supported "reloadmap-diff" automation command for DarkRadiant hot reload. Also improving hot reload code in general.
It supports fast differential updates directly from DarkRadiant to TheDarkMod.
This video shows how it works:
  https://forums.thedarkmod.com/index.php?/topic/20493-connection-to-tdm-with-automation/&do=findComment&comment=451028
stgatilov

stgatilov

11.12.2020 04:05

administrator   ~0013116

Added documentation on wiki:
  https://wiki.thedarkmod.com/index.php?title=Hot_Reload

Issue History

Date Modified Username Field Change
31.07.2020 10:34 stgatilov New Issue
31.07.2020 10:34 stgatilov Status new => assigned
31.07.2020 10:34 stgatilov Assigned To => stgatilov
31.07.2020 13:47 stgatilov Note Added: 0012702
22.08.2020 10:30 stgatilov Note Added: 0012748
22.08.2020 10:30 stgatilov Additional Information Updated
11.12.2020 04:05 stgatilov Note Added: 0013116
15.12.2020 11:17 nbohr1more Status assigned => resolved
15.12.2020 11:17 nbohr1more Resolution open => fixed
15.12.2020 11:17 nbohr1more Fixed in Version => TDM 2.09
27.07.2021 14:59 stgatilov Relationship added related to 0005683