Change Log (Beta 37)

Dec 20th, 2016
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Beta 1
  3. Added new ZScript commands:
  4. Game->CappedFPS
  5. OverlayTile(int first, int second)
  6. Game->GetDMapScreenDoor
  7. Game->SetDMapScreenDoor
  8. Game->GetDMapScreenState
  9. Game->SetDMapScreenState
  10. Added using bitmaps to Screen->Quad as textures.
  11. Set header version to 0x254.
  12. Flaged as a beta in the header.
  14. //Beta 2
  15. Updated Build to 30, and set version as 254
  16. Fixed missing entry for THROTTLEFPS in the bytecode.
  17. Tried addin additional bitmap draw mode rotate_sprite_trans: This allegro function call would not compile. We need to udate allero.
  18. Added constant TEX_BITMAP to std_constants
  19. Created test quests for OverlayTile, and Game->CappedFPS
  21. //Beta 3
  22. Fixed build ID and changed to 31.
  23. Corrected OOverlayTile
  24. Updated some instructions.
  25. Fixed minor oversight in std_functions
  27. //Beta 4
  28. Added tilde key checking to CappedFPS
  30. //Beta 5
  31. Began implementing DrawBitmapEx
  33. //Beta 6
  34. Implemented DrawBitmapEX, with limited modes.
  36. //Beta 7
  37. Added additional modes to DrawBitmapEX; updated from 13 to 16 args.
  38. Modified Quad (bitmaps as textures), so it might work now.
  39. Updated ZScript docs to v0.7.6 to include these additions.
  41. //Beta 8
  42. Tried merging the script drawing changes from Gleeok. This did not go well. (WHATNO8)
  44. //Beta 9
  45. This is forked from Beta 7, not Beta 8.
  46. Merged some drawing components from allegro 4.4.2 to our 4.2 build.
  47. This adds the ability to call draw_sprite_ex, which is not ordinarily in allegro 4.2.
  48. DrawBitmapEx now has some additional modes enabled.
  49. Added BitmapQuad(), but it does not work rightly, and it may be unstable.
  50. Tried to permit reading the entire screen as a render source with DrawBitmapDX, but this did not work.
  51. Updated ZScript docs to v0.7.7 to include these additions.
  53. //Beta 10
  54. Added Link->Diagonal and Link>BigHitbox
  55. Updated the ZScript docs to v0.7.8 to include these additions.
  57. Beta 11
  58. Added ->ID to itemdata
  60. //Beta 12
  61. Added an entire list of variables to itemdata, as follows:
  62. //These correspond to the ten pulldown values on the 'data' page.
  63. Misc1, Misc2, Misc3, Misc4, Misc5, Misc6, Misc7, Misc8, Misc9, Misc10
  65. //These correspond to the ten pulldown values on the 'action' page.
  66. Attribute1, Attribute2, Attribute3, Attribute4, Attribute5, Attribute6, Attribute7, Attribute8, Attribute9, Attribute10
  68. Modifier //The Link Tile Modifier
  69. Script //The Action Script
  70. PScript //The Pickup Script
  71. MagicCost //The MP Cost of the item
  72. MinHearts //The minimum hearts to pick up the item (e.g. swords in Z1)
  73. Tile //The tile used by the item
  74. Flash //Flash, and two-hand.
  75. CSet //The item CSet
  76. AFrames //The number of animation frames
  77. ASpeed //The animation speed
  78. Delay //The animation delay
  79. Updated the ZScript docs to v0.7.9 to include these additions.
  81. //Beta 13
  82. Added the missing itemdata flags: Combine, Downgrade, KeepOld, RupeeCost, Edible, GainLower, Flag1, lag2, Flag3, Flag4, Flag5, and 'Unused'.
  83. Updated the ZScript docs to v0.8.0 to include these additions.
  85. //Beta 14
  86. Expanded Link->Misc[16] to Link->Misc[32]
  87. Expanded lweapon->Misc[16] to lweapon->Misc[32]
  88. Expanded eweapon->Misc[16] to eweapon->Misc[32]
  89. Expanded item->Misc[16] to item->Misc[32]
  90. Expanded npc->Misc[16] to npc->Misc[32]
  92. Modified the ZQuest 'Item Editor' so that no options are greyed out (disabled), allowing the user to set values to work in conjunction with the new itemdata entries, in scripts.
  93. Updated zscript.txt to v0.8.1 to reflect these changes.
  95. //Beta 15
  96. Added public link var zstringwarp , and an if(zstringwarp) statement to the Link class to support warping by string. -ZoriaRPG
  97. Added SCCs for Warp, Warp2, and SetScreenD to zstrings. -Dimentio
  98. Wrote functions for SCC cases MSGC_WARP, MSGC_WARPSQ, MSGC_SETSCRD. -ZoriaRPG
  100. Added Link->UseWarpReturn to ZScript. -ZoriaRPG
  101. Added handlers in the Link class: setWarpReturnSquare(int), getWarpReturnSquare(), getDirectItem(), getDirectItemA(), getDirectItemB(). -ZoriaRPG
  102. Added Link->UsingItem, Link->usingItemA, Link->UsingItemB to ZScript. -ZoriaRPG
  103. ->These should return the item number being used, or -1.
  104. ->Setting these does nothing at present. The internal variables appear to never be set?!
  106. //Beta 16
  107. Added Link->WarpSound : The user may set this, and if it is not 0, this sound plays during Link->Warp and Link->PitWarp.-ZoriaRPG
  108. Worked on do_warp()
  109. Added debug info to do_warp
  111. //Beta 17
  112. Stopped side warps playing warp sfx. -ZoriaRPG
  113. Added Link->PlayWarpSound : This enables/prevents a sound from playing even if set. Should override for side warps, etc.
  114. Fixed Link->PlayWarpSound. Now it returns properly. -ZoriaRPG
  115. Added SCC for Warp without a return square. -ZoriaRPG
  116. How the hell do we set tmpscr->warpreturnc or why is wrindex=(tmpscr->warpreturnc>>(8+(index*2)))&3; not working?!
  118. New SCCs are:
  120. /23/dmap/screen - Warps to dmap, screen
  121. /24/dmap/screen/return - Warps to dmap, screen, using return square 'return'; but the return square thing is not working.
  122. /26/reg/value - Sets Screen->D[reg] = value.
  124. Added bool isscriptedwarp and associated handlers to link.h and link.cpp. ( LinkClass::getScriptedWarp(), etc.)
  125. Modified do_warp() and dowarp() to use isscriptedwarp for how warps by script set wtSCROLL warpreturnx[] and warpreturny[], thus:
  126. if(get_bit(quest_rules,qr_NOARRIVALPOINT))
  127. {
  128. if ( getScriptedWarp() ){
  129. setScriptedWarp(false);
  130. wrx=tmpscr->warpreturnx[wrindex];
  131. wry=tmpscr->warpreturny[wrindex];
  132. }
  133. else{
  134. wrx=tmpscr->warpreturnx[0];
  135. wry=tmpscr->warpreturny[0];
  136. }
  137. }
  139. //Beta 18
  140. Additional work on warping.
  141. The SCC warps are buged. If the present screen is a screen 8 cave, Link warps into unknown space. -ZoriaRPG
  142. Added checks for isscriptedwarp to LinkClass::dowarp(int,int)
  144. //Beta 19
  145. Added Link->WarpEffect to set an in-built effect for Link->Warp -ZoriaRPG
  146. Added Screen->ZapIn(), Screen->ZapOut, Screen->WavyIn(), Screen->WavyOut, and Screen->OpeningWipe -ZoriaRPG
  147. These replicate the animations from tilewarps, to call at any time (without warping).
  148. Fixed return squares for Link->Warp
  149. Added additional SCCs for warping, and rewrote some of the old ones.
  150. Renumbered SCCs for warping (31, 32, 33, 34) and Scren->D (40)
  152. //Beta 20
  153. Partially rewrote LinkClass::dowarp() to fix sound and dest issues.
  154. Renamed bool Link->PlayWarpSound to Link->SideWarpSounds
  155. Added ClearSCCWarpValues and used it to clean up SCC warps.
  156. Added LinkClass::playpitwarpsfx and bool Link->PitWarpSounds to ZScript, to determine if pit warps play a sound
  157. Added bool LinkClass::ispit , LinkClass:: void getIsPitWarp, bool setIsPitWarp.
  158. These are used to determine if the warp is a ptwarp after all the other vars clear.
  159. We need to rewrite PitWarp; eh?
  160. All new ZScript features, and warp sounds work.
  161. SCC Warp features still require testing, and debugging.
  162. Updated zscript.txt and 2.54_New_Zscript.txt to reflect the changes and additions.
  163. Updated 'std_constants' with new WARPFX_* values.
  165. PitWarpSound and SideWarpSound seem to be joined somehow. Check to see if any of the EVENTS in Link.cpp might
  166. be causing this, such as the event that calls dowarp().
  168. Discovered that zlaunch-w.exe will crash if zquest-w is not in its working path. -ZoriaRPG
  170. //Beta 21
  171. I appear to have fixed all of the warp sound conflicts, so we shall see what happens. -ZoriaRPG -ZoriaRPG 14/Dec/2016
  172. New public build.
  174. //Beta 22
  175. Saffith pointed out that SCC numbering was overflowing into ASCII escape char space.
  176. Fixed new SCC numbering, and rearranged.-Z 15/Dec/2016
  177. Changed the SCC IDs for new SCCs as follows:
  178. \18 Screen->D
  179. \19 SetScreenD(screen,reg,value)
  180. \23 SetDmapScreenD(dmap,screen,reg,value)
  182. \26 Warp(dmap,screen)
  183. \27 Warp(dmap,screen,return)
  184. \28 Warp(dmap,screen,return,sound)
  185. \29 Warp(dmap,screen,return,sound,effect)
  186. Added Link->Eaten, Link->Extend, Link->SetTile(int,int,int,int) -Z 15/Dec/2016
  187. Added constants for LSPRITE_* (Link Sprite) and cleaned some things in std_constants.
  190. //Beta 23
  191. Added temporary stuff for Link->SetExtend(int,in6t,int), Link->GetExtend(int,int) -Z
  192. Fixed Link->Extend not setting all dirs. -Z 15/Dec/2016
  193. I suggest droping the SCC for GetScreenD, as Screen->D and DMapScreenD should suffice. -Z
  194. I would also cut two of the warp functions to save space. -Z
  195. Link->SetTile(i,i,i.i) isn't workin. Saffith says it's because of how Link is drawn. This may be true,
  196. but I suspect that my stack functions are also rubbish. -Z 16/Dec/2016
  197. These may need to wait until 2.55, as there are more important facets to worry about, when I'm wasting
  198. 30+ hours recompiling to test changes. -Z 16/Dec/2016
  199. I'd still like to partially rewrite pit and side warps, and give each a unique sound var, so that I can
  200. dispose of this boolean flag and shared soud silliness. -Z
  201. Disabled the ability to call Link->GetExtend(i,i) and Link->SetExtend(i,i,i). -Z 16/Dec/2016
  202. These were returning errors:
  203. Couldn't find function label #1820
  204. Couldn't find function label #1821
  205. Link->SetTile started generating a SP error. Calling it would hang ZC. Tried a new fix.-Z 16/Dec/2016
  206. Updated docs.
  209. //Beta 24
  210. Worked on Link->SetTile, Link->GetExtend, Link->SetExtend -Z
  212. //Beta 25
  213. Chaned Link->SetExtend() to Link->GetLinkExtend() and Link->GetExtend() to Link->SetLinkExtend().
  214. This should prevent issues with internal labels. -Z
  216. //Beta 26
  217. Some minor opcode revisions for GetLinkExtend and SetLinkExtend. Note that they still are not correct,
  218. but they no longer do *nothing at all*. -Z
  219. Updated docs.
  220. Public release.
  222. //Beta 27
  223. Worked on Set/GetExtend opcodes and entries. Revised get_link_extend to be a binary opcode function. -Z
  224. Started working on ten script weapon defs. Added enedata_defense3_list, and editor panels to zq_custom.cpp and expanded the
  225. edefd enum for all ten in addition to generic script in zdefs.h. Nothing should be different about guys./h/cpp/.
  226. Edited the jproc dialogue boxes, and spacing for the third defs tab is less than the other two.
  227. -->This is because the other pages fit only nine types per tab.
  228. I should just enlarge the window. -Z
  229. Note: I have no updated the weapon damage checking to *do anything with* these new fields, but the user should
  230. be able to set the values.
  231. !Adding 'Double Damage' to the list of defense effects would also be nice.
  233. Added scriptdefense[] to npcs, and the related ZScript stuff as n->ScriptDefense[10].
  234. Fixed npc->Misc, *weapon->Misc, item->Misc, and Link->Misc in GlobalSymbols.cpp.
  235. ->I forgot to set their size to 32 there. Fixed now. -Z
  236. Added a bunch of stuff to zq_custom.cpp. Might work now.
  237. Modified zq_class.cpp, zdefs.h, guys.h,
  238. Added extra define and enum to zdefs.h for script weapon types.
  239. Added for loops to write to the new array.
  240. -ZoriaRPG 18-Dec-2016
  242. For some reason, int writeguys(PACKFILE *f, zquestheader *Header) is preventing npcs from spawning
  243. with the new scriptdefense[] values?
  245. Something is clearly amiss in either zq_class.cpp or zq_custom.cpp, where the values are set.
  247. //Beta 28
  248. Disabled writing scriptdefense[] to the packfile, to allow NPCs to spawn, while we figure out why this is happening. -Z
  249. Updated docs.
  251. //beta 29
  253. Added the script defs to the packfile. Saving/Reading them caused massive corruption. -Z
  255. //Beta 30
  256. Disabled saving script defs set from the editor.
  257. They still work when set by script, but they are not retained with the quest (yet),.. -Z
  258. Implemented enemy weapon checks for script types in guys.cpp with new functions checking them. -Z
  259. Setting n->ScriptDefense[] works perfectly, although we will need to add a quest version check
  260. to prevent older quests that used the generic defense from obeying segregated defense rules. -Z
  261. Tested npc->ScriptDefense[] and verified that it works. -Z
  262. Fixed the item editor field for 'Sound' to display properly. -Z
  264. //Beta 31
  265. Began adding Link->Action(LA_CASTING)
  266. Worked on enemy editor stuff.
  268. //Beta 32
  269. Reverted the enemy editor changes.
  270. Trying again.
  272. //Beta 33
  273. //Based on Beta 30 (Stable)
  274. Added some casting routines, but these freeze Link, so I disabled them for the present. -Z
  275. Updated zquest.txt to fix a typo in Misc. Colours. -Z
  277. //Beta 34
  278. Added new definitions for reading the packfile. if V_GUYS is > 24.
  279. Updated V_GUYS to 25
  280. Fixed the packfile issues in qst.cpp, zq_class.cpp, and finished adding the scrit defences to the ZQ Editor. -Z
  281. Setting the ten script type defences now works as intended, both from the editor, and from scripts.
  282. Requires testing old quests, to see if anything broke. -Z 19/Dec/2016
  283. Added a method of checking if an old quest is running to deferr the script type defence checks to the generic edefsSCRIPT.
  284. THis requires testing. -Z 19/Dec/2016
  285. Merged the 2.50.3 RC1 allegro config files and such into 2.54. -Z 19/Dec/2016
  286. New public build candidate.
  287. Updated docs: Updated zquest.txt with enemy editor changes. -Z
  289. //Beta 35
  290. Modified the packfile reading so that enemies from older quests will forward their defense[edefSCRIPT]
  291. setting to each of the ten scripdefense[n] indices. This means that in the enemy editor, loading an old
  292. quest will push the old values to the new indices. -Z 19/Dec/2016
  293. Renamed std_constants_2.50.2.zh to std_constants_2.54.zh -Z
  294. Renamed std_f_2.50unctions.2.zh to std_functions_2.54.zh -Z
  295. Added setting to std.cfg to disable mods to OnSidePlatform(), despite that the revised function isn't in this build.
  296. Fixed AdjacentCombo(int,int,int) in std_functions. -Z
  297. New public build candidate.
  298. SetComboSolid is choosing the wrong combos. -Mitsuukara 20/Dec/2016
  299. Verified that this also occurs in 2.50.3RC1 - Mitsukara
  301. //Beta 36
  302. Rewrote Link->SetTile(), Link->SetLinkExtend(), Link->GeLinkExtend() -Z 20/Dec/2016
  303. Removed GETLINKEXTEND and LINKSETTILE from ZASM . The getter for Link*Extend now uses the same reg
  304. as the setter; both are SETLINKEXTEND. Likewise, LINKSETTILE is now SETLINKTILE and the ZScript
  305. function is now Link->SetLinkTile(). -Z
  306. I might move these from Link-> to Game->, if they ever work.
  308. //Beta 37
  309. Finished implementin Link->SetLinkExtend(int sprite, int dir, int extend) and Link->GetLinkExtend(int sprite, int dir)
  310. Started revising Lnk->Extend , and added a function to Link.cpp (disabled at present) to convert an action to a sprite.
  311. See 'ZScript.txt' for more details. -Z
  312. Revised Link->SetLinkTile(), and started adding Link->GetLinkTile().
  313. These are related to the tile used by sprites, not Link->Tile clones. SetLinkTile still does nothing. -Z
  314. I might expand the D# script args from 8 to 16 next. The stak registers were reserved for that many. -Z
  315. Completed Allegro 4.4.2 migration for Linux. There was a missing 'optional' audio lib that should fix
  316. the sound issues. -Grayswandir. 20/Dec/2016
  317. The Windows ag442 stuff is nearly done, too. -Z 20/Dev/2016
RAW Paste Data

Adblocker detected! Please consider disabling it...

We've detected AdBlock Plus or some other adblocking software preventing Pastebin.com from fully loading.

We don't have any obnoxious sound, or popup ads, we actively block these annoying types of ads!

Please add Pastebin.com to your ad blocker whitelist or disable your adblocking software.