Jump to content

Photo

Zelda Classic 2.55.0, Alpha 70

Alpha Æternal AEternal Windows 2.55

  • Please log in to reply
9 replies to this topic

#1 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 07 May 2020 - 04:48 PM

Zelda Classic AEternal, v2.55, Alpha 70 (Win32, 101MB)

Changelog for 2.55 on GitHub.

Expo Module | Demo Module | PhantomMenace Module |

Overview

 

Fixes

  • Fixed wallmasters not emerging from walls.
  • Enemies should now obey scripttile and scriptflip using old sprite draws.
  • Fixed issues with the new strings options.
  • Rewrote the 'fix' datatype. Now all sprite coordinates have perfect precision to four decimal places.
  • Mass Overlay in the Tile Editor, now properly respects copied blocks.
    Assigning duplicate keybindings now explicitely reports which functions are bound to the same key.
  • Fixed 'Default Defense' on weapons being reset when opening the item editor.
  • Fixed a longstanding issue where if the player runs a quest with an A_B subscreen, and the last item set inside an active subscreen wrote the value of button item 'A', then they exit the quest and load a quest with only B-item subscreens, that the A-button would become unresponsive (swords fail to work, and so forth).
  • Fixed a number of issues with the new combo animation system, relating to ASkip.
  • Fixed tile bug with Mass Combo Creation, as well as the Ctrl+Shift+PLUS combo editor shortcut.
  • No-matter what colour you set as 'transparent', the unused tile spots in the tile editor are now always black with a grey X. They no longer use the colour assigned to the 0th index of their cset. InvalidStatic mode is unchanged.
  • Allow properly toggling the 'Use Pal CSet' Box in Enemy Editor.
  • Fixed some inappropriate QRs on quest loading.
  • The new console properly now reports quest metadata.
  • Rewrote combo animation. This allows properly writing the tile of combos by script.
  • Fixed the DMap Selection window not drawing a preview or other data.
  • You can now have permanent secrets on dungeon DMaps.
  • Room Guys with Anim==aNONE once again Update Every Frame

Improvements

  • ZC Player now has a fancy new splash logo courtesy of KingAquamentus.
  • Added hotkeys for Tile Page Navigation:
    • Previously, `Ctrl+Plus/Minus` increment/decremented the tile of selected combos. Shift+Ctrl moved by a tile row. Now, Alt+Ctrl moves by a tile page, while Alt+Shift+Ctrl moves by 10 tile pages.
  • Added more copy/paste options to String Editor.
  • You can now set portraits, and full backgrounds for strings.
  • Added the ability to type a series of characters to quickly locate entries in all dropdown lists, including 'open file' lists.
  • Reconfigured menus for optimal use in ZQuest Editor small mode.
  • Added a Quest Report to locate ->Next Combos with secret flags.
  • You can now press C in the Tile Editor to copy a tile, then select a range of tiles and press F to FLOODFILL paste the copied tile to every position.
  • In the Tile Editor, electing multiple tiles, pressing C, then selecting multiple tiles and pressing O will now overlay the copied selection tot he dest selection, triming overflow.
  • Added a new Ruleset, 'Modern', that enables all new features.
  • The Feather itemclass now permits multiple jumps via its attributes (e.g. the double, mid-air jump, in 'Ghouls and Ghosts').
  • Added the .zdoors file type: You can now export/import doorsets.
  • The Palette Editor now permits entering RGB values and has other improvements.
  • Added SFX to Step->Secrets Combos.
  • All roomtypes now allow a 'Generic Catchall' set via the menus.
  • Improved the ZQ Editor mapscreen selector.
  • Fixed the behaviour of 'Item 2' and 'Item 3' fields in the Subscreen Editor.
  • Added Weapon and Hero Quest Rule tabs.
  • Lockblocks: Added Option for Counter Requirement 'No Drain'.
  • Added Troll/Thief Lockblocks Req. by ShadowTiger

 

 

ZScript

  • Compiling scripts is now much faster.
  • Added ZASM Metadata.
  • Heavily optimize array initialization, and somewhat optimize array access.
  • Summoner enemies now properly set the ParentUID to their script UID on their children; i.e., (npc->ParentUID) of the summoned enemy.
  • Heavily optimised ZASM generation in several areas, making script execution faster without any special work from the user.
  • You can now export ZASM scripts from a quest, and re-assign script slots without recompiling.
  • Fixed crash on printing ZASM metadata >=512 characters.
  • Added Hero->Step, so that the speed of the player can be modified by script.
  • Added a config+checkbox to allow toggling recovering missing ZScript scripts.
  • Updated ghost.zh to version 2.8.15, and std.zh to 1.7051.
  • Fixed combodata->o_tile interaction with tile moving.
  • Fixed a number of issues with GetPixel().
  • You can now deallocate and reallocate user bitmap objects.
  • Fixed an issue where values written to Hero->Equipment (also ItemA, ItemB, and other similar functions) would reset on screen or DMap change; and ensured that ZC preserves values written by scripts to item slots on saving, then loads them on resume.
  • Clarified a number of ZScript error messages, both when compiling, and when executing scripts.
  • Rewrote the 'do not halt on error' system in the compiler. It should never crash, now.
  • Fixed npc->Create() not assigning the npc pointer.
  • Fixed bugs when compiling ZVersion.zh.
  • Combo*[] access by script now has sanity bounds and will report invalid access.
  • The OnSaveLoad script timing now runs ere the opening wipe.
  • Fixed some issues with global slot timing that broke compatibility with older quests.
  • Both printf() and sprintf() are now internal.
  • Added stricmp() and strnicmp() as internal functions.
  • Added CONST_ASSERT(expr) to ZScript. This allows creating custom compile errors in your scripts.
  • Added Game->IncrementQuest().
  • You can now use switch() statements with string literals as cases.
  • Added the file-> pointer datatype and functions to manipulate files in a special path used by the quest.
  • Add new ZASM Debugger modes
    • Holding 'Ctrl' in addition to either 'Shift+Insert' or 'Alt+Insert' will perform the normal operation of the given combination, but will skip all ZASM printing until it reaches the next break- allowing higher FPS during that time.
  • Add a clear slots dialog to the script assign menu.
    • This replaces the two clear buttons present prior, and allows more specific options. You can clear only missing, only preserved, and only imported ZASM, as well as any type of your choice, or all slots.
  • Added messagedata->TextHeight and messagedata->TextWidth.
  • Added Game->Reload() to ZScript.
  • Added a pseudo-datatype zstruct as a variation of untyped script.
  • Added Game->Scrolling[5].
  • Added new 'approximately equal' token ~~ to ZScript.
    • You can set the fineness of the equality, which defaults to 0.0100, so ((9.9190 ~~ 10)==true).
  • Added new bitnot-assign token ~= to ZScript.
  • Added numeric literal ranges to switch-case.
  • Optimised TheRandomHeader.zh for 2.55 as v3.0
  • Made ->Power and ->Damage uniform between *weapon and itemdata.
  • Added int shopdata->Type as read-only.
  • Fixed the forcedir arg for WarpEx() and added Warp({arr}) as an alternative for WarpEx({arr}).
  • Fixed a bug in shopdata->String[3].
  • Added combodata scripts.
  • Add comboscript->this->PosX(), PosY(), Pos() and combodata->Script, InitD[2].
  • Added a console for Linux.

See the file changelog.txt, for more changes, bugfixes, and improvements.


  • Jared and Tabletpillow like this

#2 Soga

Soga

    Secretly Alive

  • Members

Posted 07 May 2020 - 07:59 PM

What is the scope of a custom approximately equal margin? Can you set different approx equal margins in different scripts?



#3 Tabletpillow

Tabletpillow

    Hi

  • Members
  • Real Name:Xavier
  • Location:Oregon

Posted 07 May 2020 - 09:35 PM

 

  • You can now have permanent secrets on dungeon DMaps.

 

This is truly a revelation.



#4 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 07 May 2020 - 10:04 PM

What is the scope of a custom approximately equal margin? Can you set different approx equal margins in different scripts?

 

I believe that it is file scope. Robert could confirm that.

 

#option APPROX_EQUAL_MARGIN <float>

#option APPROX_EQUAL_MARGIN 0.2000
        Sets the margin of error for the ~~ (approximately equal) operator.
        The defailt margin of error is 0.0100, so (1.090 ~~ 1.080) == true.
        Set to a foating point value to use a new error margin for ~~.



#5 Emily

Emily

    Scripter / Dev

  • ZC Developers

Posted 07 May 2020 - 10:06 PM

It's every scope function or above. "#option" can be used in file, namespace, script, and function scope. When doing something that requires the option, it looks at the current scope, and looks upwards until it finds a "#option". If it doesn't find one at file scope, it will look at whatever file imported that file. If it doesn't find one in any file, all the way up to the zq script buffer, it uses the default option (for most options, configurable in 'ZScript > Compiler Settings').


  • Soga likes this

#6 Tabletpillow

Tabletpillow

    Hi

  • Members
  • Real Name:Xavier
  • Location:Oregon

Posted 07 May 2020 - 10:20 PM

Jokes aside. I really like the new additions for this alpha. Haven't updated since alpha 40.

Although I'm having a lot of trouble "updating" ghost.zh

Lots of new headers added and idk how much this would hurt compatibility.

Also I find enemies more likely to walk into solid objects for some reason in this build.



#7 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 23 May 2020 - 06:42 AM

Jokes aside. I really like the new additions for this alpha. Haven't updated since alpha 40.

Although I'm having a lot of trouble "updating" ghost.zh

Lots of new headers added and idk how much this would hurt compatibility.

Also I find enemies more likely to walk into solid objects for some reason in this build.

 

All of the ghost.zh scripts should work without changes. You will need to copy over any tile-set-specific constants, but nothing more.

 

You should not attempt to merge the current headers with any older headers.



#8 RephireZeKasual217

RephireZeKasual217

    Initiate

  • Members

Posted 24 May 2020 - 03:20 PM

This update is amazing! I can implement a run button with the greatest of ease now. But one question. Moosh's Jump Button Script doesn't seem to be working. I press the button, but Link doesn't jump, but it still makes the jump sfx.



#9 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 26 May 2020 - 09:42 AM

This update is amazing! I can implement a run button with the greatest of ease now. But one question. Moosh's Jump Button Script doesn't seem to be working. I press the button, but Link doesn't jump, but it still makes the jump sfx.

 

Jump as a bug in this version We may ave fixed it. Wen we post A2A73, I'll inform you.



#10 RephireZeKasual217

RephireZeKasual217

    Initiate

  • Members

Posted 27 May 2020 - 03:07 AM

Okay. Good to know. Still, it's great to see how much progress is being made. It's so cool how 2.55 is shaping up to be quite the update.

 





Also tagged with one or more of these keywords: Alpha, Æternal, AEternal, Windows, 2.55

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users