User Tools

Site Tools


draw_distance_and_its_effects_in-game

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
draw_distance_and_its_effects_in-game [2015/06/30 02:20]
phanjam created
draw_distance_and_its_effects_in-game [2015/06/30 21:05]
chthon added note to make clear that RENDERALWAYS turned out to be a bad idea, cleaned up leftover bbcode
Line 1: Line 1:
 +<fs 300%>​**Draw distance and its effects in-game**</​fs>​
 +
 +By: Chthon
 +Original post: http://​forums.runicgames.com/​viewtopic.php?​f=48&​t=60362
 +
 (The rest of) this post is dedicated to explaining what goes into doing draw distance correctly. This is useful for (1) people making their own draw distance mod, (2) people merging draw distance with other mods, and (3) people who want to know what to look for by way of potential errors to report. (The rest of) this post is dedicated to explaining what goes into doing draw distance correctly. This is useful for (1) people making their own draw distance mod, (2) people merging draw distance with other mods, and (3) people who want to know what to look for by way of potential errors to report.
  
Line 52: Line 57:
  
 =====III. The Render Always Flag===== =====III. The Render Always Flag=====
 +
 +**NOTE: As noted later in the thread linked above, DO NOT use this flag globally. It messes up a number of particle effects.** -Chthon
  
 When monsters come out from behind an obstruction,​ such as a UI menu, they fade in. This causes the same sort of "oh surprise, there'​s a monster there!"​ problem as a short draw distance. The solution is to set the RENDERALWAYS:​true in the base monster so that all the monsters inherit it. When monsters come out from behind an obstruction,​ such as a UI menu, they fade in. This causes the same sort of "oh surprise, there'​s a monster there!"​ problem as a short draw distance. The solution is to set the RENDERALWAYS:​true in the base monster so that all the monsters inherit it.
Line 57: Line 64:
 Unfortunately,​ this has a side effect. Some monsters don't display properly with RENDERALWAYS:​true,​ so you need to go back through and set RENDERALWAYS:​false for some units. This seems to happen mostly with breakables and other units that switch between two visible states. I //think// I've found them all, but maybe missed some.  Please keep an eye out for these while testing. Unfortunately,​ this has a side effect. Some monsters don't display properly with RENDERALWAYS:​true,​ so you need to go back through and set RENDERALWAYS:​false for some units. This seems to happen mostly with breakables and other units that switch between two visible states. I //think// I've found them all, but maybe missed some.  Please keep an eye out for these while testing.
  
-> Specific to Chthon'​s Draw Distance mod +> Here's the list of units I changed back to RENDERALWAYS:​false:​ 
->> Here's the list of units I changed back to RENDERALWAYS:​false:​ +> VAULT_LIGHTNING_TURRET.DAT 
->> VAULT_LIGHTNING_TURRET.DAT +> nether_flytrap_lootable_01.dat (ichor pod) 
->> nether_flytrap_lootable_01.dat (ichor pod) +> vaultturretmobilespawnertop.dat (mobile spawner top) 
->> vaultturretmobilespawnertop.dat (mobile spawner top) +> eggs flyer_egg_01.dat through 04 + trillbot_egg.dat (skara eggs) 
->> eggs flyer_egg_01.dat through 04 + trillbot_egg.dat (skara eggs) +> tutaran_trap_01.dat 
->> tutaran_trap_01.dat +> mine_trap_01 
->> mine_trap_01 +> Automaton_Gen2_Rusted 
->> Automaton_Gen2_Rusted +> Automaton_Gen2_MuddyEnvi1 
->> Automaton_Gen2_MuddyEnvi1 +> Automaton_Gen2_MuddyEnvi2 
->> Automaton_Gen2_MuddyEnvi2 +> Gargoyal_Lava ??? (think this one was just my imagination...) 
->> Gargoyal_Lava ??? (think this one was just my imagination...) +> barrel_poison_01 
->> barrel_poison_01 +> barrel_poison_stack_01 
->> barrel_poison_stack_01 +> barrel_tnt 
->> barrel_tnt +> barrel_tnt_small 
->> barrel_tnt_small[/spoiler] +>  
->>  +> [edit: This breaks some particle effects, so it has to go. :(]
->> [edit: This breaks some particle effects, so it has to go. :(]+
  
 =====IV. The Horrible Mess That Is Aggro===== =====IV. The Horrible Mess That Is Aggro=====
Line 95: Line 101:
 The solution is to increase the monsters'​ Follow Radii. But how much? The solution is to increase the monsters'​ Follow Radii. But how much?
  
-To sort this one out, I wrote a small program that surveys the dat files to make a report of the existing Follow Radii, and then changes them according to a mapping between old and new values that I provide. ​ This enabled me to keep the new Follow Radii in roughly the same proportion to OUTDOOR_UNIT_ACTIVE_RANGE and INDOOR_UNIT_ACTIVE_RANGE as they were before. This means that there are still [i]some[/i] monsters that you can take out with cheesy pot shots -- but they are the same monsters that you can do that to in vanilla TL2. Everything else will give chase when you attack it (or its buddies).+To sort this one out, I wrote a small program that surveys the dat files to make a report of the existing Follow Radii, and then changes them according to a mapping between old and new values that I provide. ​ This enabled me to keep the new Follow Radii in roughly the same proportion to OUTDOOR_UNIT_ACTIVE_RANGE and INDOOR_UNIT_ACTIVE_RANGE as they were before. This means that there are still //some/monsters that you can take out with cheesy pot shots -- but they are the same monsters that you can do that to in vanilla TL2. Everything else will give chase when you attack it (or its buddies).
  
 If you want to play with it, the program is here: If you want to play with it, the program is here:
Line 136: Line 142:
 > boss_werewwolf (increase sight to 30) > boss_werewwolf (increase sight to 30)
 > boss_wraith (increase sight to 30) > boss_wraith (increase sight to 30)
-> boss_yakutaur (increase sight to 30, motion to 25)[/spoiler]+> boss_yakutaur (increase sight to 30, motion to 25)
  
 Also, some scripted events with bosses got broken, so I have to edit the map layouts for these two events: Also, some scripted events with bosses got broken, so I have to edit the map layouts for these two events:
Line 191: Line 197:
 > WEREWOLF_CHAMPION.DAT (sight -3) > WEREWOLF_CHAMPION.DAT (sight -3)
 > ZOMBIE_ANCIENT_CHAMP.DAT (sight, motion, & damage react -5) > ZOMBIE_ANCIENT_CHAMP.DAT (sight, motion, & damage react -5)
-> ZOMBIE_SWAMP_WITCH.DAT (sight, motion, & damage react -5)[/spoiler]+> ZOMBIE_SWAMP_WITCH.DAT (sight, motion, & damage react -5)
  
 Also, it turns out that monsters using teleport+attack skills from off-screen is just no fair, so these two skills got their ranges cut down: Also, it turns out that monsters using teleport+attack skills from off-screen is just no fair, so these two skills got their ranges cut down:
Line 230: Line 236:
 > (Non-moving minions don't need adjustments) > (Non-moving minions don't need adjustments)
 > (Did not adjust flaming sword since the spell isn't in vanilla TL2, and the skill is a complete mess that needs work in order to be usable.) > (Did not adjust flaming sword since the spell isn't in vanilla TL2, and the skill is a complete mess that needs work in order to be usable.)
-> (Did not adjust aloe gel since the unit itself doesn'​t exist in vanilla TL2.)[/spoiler]+> (Did not adjust aloe gel since the unit itself doesn'​t exist in vanilla TL2.)
  
 This is something that could use a lot of play testing. It was quite difficult to get the minions to (mostly) stay on the screen without making them too unaggressive. ​ This is something that could use a lot of play testing. It was quite difficult to get the minions to (mostly) stay on the screen without making them too unaggressive. ​
Line 270: Line 276:
 > VARK_POPCORN.DAT > VARK_POPCORN.DAT
  
 +{{tag>​[draw_distance aggro monster_behavior pet_behavior]}}
draw_distance_and_its_effects_in-game.txt · Last modified: 2015/06/30 21:05 by chthon