-
Notifications
You must be signed in to change notification settings - Fork 5
/
todo.txt
118 lines (73 loc) · 6.16 KB
/
todo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
5. Add service depot instant repair fix from Arda
6. crates dont work in coop mode
18. There's graphical glitching in the no-refresh area of the sidebar with the keybar toggle key, need to copy code from options menu to clear buffer. This code might be useful to fix graphical glitching on maps smaller than reso.
7. Need to add loading of custom explosions. Work like the SoundEffects code (custom buffer and added a call to read INI section [Explosions], use AnimType const CCINIClass::Get_AnimType to get something like:
[Explosions]
7=CBL1SPLASH
Then patch code using explosions like Combat_Anim() to return the correct animtype
8. Check into making the hard-coded fb1 trail (which replaces smoke trail) behavior an option:
AUTO:004611A7 028 mov edx, offset INIObject_FB1 ; "FB1"
AUTO:004611AC 028 cmp ecx, 0FFFFFFFFh
3. To fix the skirmish AI Allies Tech Center being sold almost immediately, patch 0x004DA1F0 to start reading the array from 0x0060198E instead of 0x00601989
4. Take a look into why Soviet AI take ages to build tech center
17. Make skirmish AI not build radar jammer, Mobile Gap Generator, Mad Tank and Demo truck
18. Make skirmish AI build shock trooper and dogs
23. UPDATE savegames pack with 3.03 savegames, and upload it to site and update it there
6. make sure to set all the settings back to a "default" before releasing a new release
7. Make ore last longer
8. Make sure to save all added new map/RuleClass keywords in memory, and to clear them too when loading 3.03 savegames
9. Look into making super weapons multi-shot with HouseClass extensions..
10. the spawner aftermath option doesn't work if the game is loaded from a different working directory then where spawn.ini is located, or something like that
11. Use GetSystemTime() and sprintf_ to set map snapshot key preview filename like cnc-ddraw does
Todo for later:
--------------------------------------
7. Look into the attract feature again
For extended type classes:
1. Find TFixedIHeapClass<T>::TFixedIHeapClass(void) for type and patch the argument to FixedHeapClass::FixedHeapClass(int)
2. Find <T>::operator new(unsigned int) and hard-code the size
3. In TFixedIHeapClass.fn_init(void) find the heap for the type and patch the size argument to FixedHeapClass::FixedHeapClass(int)
4. Find TFixedIHeapClass<T>::TFixedIHeapClass(void) and patch the size argument to FixedHeapClass::FixedHeapClass(int)
5. Find the size argument somewhere at the end of TFixedIHeapClass<T>::Save(Pipe &) and patch it.
6. Find the size argument somewhere at the end of TFixedIHeapClass<BuildingTypeClass>::Load(Straw &) and patch it.
7. TO FIX MEMORY ISSUES WITH MAP LOADING AND EXTENDED TYPE CLASSES HOOK BEFORE THE VIRTUAL FUNCTION CALLS TO ::Read_INI() in RulesClass::Objects() and check if the current INI file is RulesINI, if it is call a clear function for the type.
8. NEED TO ADD CODE TO CLEAR STUFF when loading a 3.03 savegame, seperate from clearing when loading a mission/map..Maybe in the heap<T>::Load() function?
To extend BulletTypeClass:
1. Move Initial RULES.INI loading to before Heap loading stuff (check how arda does this?)
2. Patch:
AUTO:004F40D8 0D8 mov edx, 12h ; Amount of objects in heap
AUTO:004F40DD 0D8 mov eax, offset TFixedIHeapClass<BulletTypeClass> BulletTypes
3. Patch the following to read INI sections count:
AUTO:00426C90 008 lea esp, [ebp-4]
2. add support for oil derrick logic, need to extend BuildingClass, then hook BuildingClass::Captured() and BuildingClass::AI() for oil derrick logic. Use HouseClass::Refund_Money(unsigned int) to give house money and write custom timer macros using frames. Extend BuildingTYPEClass too for the Oil Derrick options:
UseOilDerrickLogic= (yes/no)
OilDerrickCaptureReward=
OilDerrickMoney=
OilDerrickFrameTimer=
AUTO:00460AD0 ObjectTypeClass & const BuildingClass::Class_Of(void)const proc near (to get the BuildingObjectType pointer)
; For buildingClass
AUTO:004C8035 00C mov edx, 0FBh
AUTO:004C803A 00C call FixedHeapClass::FixedHeapClass(int)
AUTO:004CE74E 014 mov ebx, 0FBh
AUTO:004CE753 014 mov [eax+0Ch], edx
AUTO:004CE673 014 mov ebx, 0FBh
AUTO:004CE678 014 mov edx, eax
19. Fix South Advantage
9. make shown names longer in radar map area: 005327F1 83F9 15 CMP ECX,15 then need to patch the part of the code that shows the names in the sidebar to use my own names array which gets loaded from spawn.ini (if spawn.ini is enabled)
10. Rename computer players to show that they're easy/normal/hard ai, patch the spawner country/colour/handicap code, add a check for ai players by testing the right bit field and rename, the player name offset for HouseClass is HouseClass+0x1790, need to get their handicap too and strcpy()
Names get loaded at: 00532788
10. Add option to not have ai build mad tanks
11. Add option to not have ai build demo trucks
12. Add option to not have ai build radar jammer
41. Add rules.ini keyword to make ai build nuke silos and service depots, replacing with kennels at:
AUTO:004DA898 mov eax, 17h
with mov eax, 1dh
16. make AI build one service depot, cameo pillbox (hack normal pillbox code) and one nuke silo, service depot count is HouseClass+0x366, nuke silo count is HouseClass+0x37a
19. 0x0056A95F is growthrate for ore mines, need to modify it is read from the map with its own value instead of using growthrate
47. Game credits slide show screen is broken
[19:03:39] <iran> i think it's because of the code that blacks the borders of the main menu graphic
[19:03:48] <iran> it works by clearing the background whenever a pcx file is loaded
[19:04:00] <iran> which is done for the credits screen with that file
40. Add a rules.ini keyword to not have the AI sell their structures when all production facilities are destroyed
37. sam site fire smoke is misplaced and has C&C95 Nod Sam Site graphics overlayed (this doesn't seem noticable)
42. Create a Red Alert 1 theme pack for windows 7 (using the unfinished one as base)
48. The "skirmish" text that's shown for skirmish savegames needs to be localised