Jump to content

Photo

[ZC Fork: 2.future] Binaries for ZC Build '2.54' As Requested

Fork New ZC Version Beta Build

  • Please log in to reply
65 replies to this topic

#46 Zagut

Zagut

    Experienced Forumer

  • Members
  • Location:Somewhere in the universe.

Posted 14 June 2017 - 06:01 PM

Just a Thought: Is it possible to make more active Global Script slots so people don't have to combine Global Scripts all the time?


  • Alucard648 likes this

#47 Alucard648

Alucard648

    Wizard

  • Members
  • Location:castle Dracula

Posted 15 June 2017 - 03:43 AM

Just a Thought: Is it possible to make more active Global Script slots so people don't have to combine Global Scripts all the time?

Basically, multiple Active slots that function simultaneously.


  • Zagut likes this

#48 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 15 June 2017 - 04:58 AM

Just a Thought: Is it possible to make more active Global Script slots so people don't have to combine Global Scripts all the time?

We hope to add script callbacks. Even without making them internal, some of the parser improvements, notably function pointers, technically allow callback code, and limited messaging. Adding multiple global active scripts is not the best solution.

In theory, you can assign a pointer to a function, and store that into an array that you iterate in the global active script. Each index of iteration calls the function associated to the stored pointer.

The merge between 2.future and 2.54/55 ZC Main is approximately 85% done.

Here is a record of everything that still needs to be merged.

 

ZScript to Merge


I do not believe that I missed anything. The Audio-> and Deug-> instructions are in one of my branches, and nearly done (save that I want to expand them. later.)

Some of the Link-> functions and variables await further debate and approval. if they are not merged, then they will be part of my fork.

My next agenda items after finishing the merge (in no specific order) are:

  • Enemy Editor Improvements
  • Item/Weapon Editor
  • Renaming script flags.
  • Quest Template Packages
  • Other UI improvements
  • More control over map objects.
  • More control over secrets.
  • More control over enhanced audio.
  • Update GME audio library for enhanced audio).
  • Add alfont library (TTF support)
  • Revamp import/export options in ZQuest.
  • Partial Link.cpp rewrite.
  • More display options for strings, including translucent backgrounds.
  • Move as many quest rules as possible into a ZScript class so that they can be changed.
  • Begin moving ZScript helper functions into a ZScript class.
  • Add a struct for flag data.
  • Expand combo data with more vars.
  • Add new combo types and flags.
  • Add internal pits, and fix water walking.
  • Add ice and electricity.
  • Add new item classes.
  • Fix timed saves, auto-ackups, and exports to use the new packfile.

I do not know which of these will make it into the next official ZC release. This is all based on my available time, and the level of contributions from other participants in the project.

Some esoteric stuff, such as screen dimensions, /may/ be possible in the future, at least insofar as setting boundary points. It is impossible to say what will be cut, what we will push back into the enxt version, and what will only be available in the fork, at this time.

As soon as the merge is done, and the present issues are resolved, I will release a proper public alpha. We will need users who are willing to test oth new features, and older quests.

I also hope that Gleeok is able to hold up his own agenda, adding ffc memory management, the remainder of the script drawing stuff (e.g. the components needed for Mode-7), on-demand ffcs, and such.

I also hope to add in npcdata, and (by 2.6 or 2.65) npc scripts, and weapon scripts. No promises.

If any of you have questions, comments, concerns, or suggestions, feel free to leave a note.
 


Edited by ZoriaRPG, 15 June 2017 - 08:26 AM.


#49 grayswandir

grayswandir

    semi-genius

  • ZC Developers

Posted 15 June 2017 - 03:06 PM



Just a Thought: Is it possible to make more active Global Script slots so people don't have to combine Global Scripts all the time?

There's a couple of changes I'm working on that, once finished, should be able to let me create a "Generic Active Script" that automatically runs any imported scripts that are set up to work with it. Of course, those scripts will need to be specifically set up to do so, but doing that shouldn't be any harder than combining global scripts right now.

 

This isn't even really a goal of mine, it's just a nice side effect of some other stuff I want to do. No idea on the timetable, though. (I am absolutely horrible at predicting how much work something is.)



#50 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 16 June 2017 - 01:05 AM

There's a couple of changes I'm working on that, once finished, should be able to let me create a "Generic Active Script" that automatically runs any imported scripts that are set up to work with it. Of course, those scripts will need to be specifically set up to do so, but doing that shouldn't be any harder than combining global scripts right now.

 

This isn't even really a goal of mine, it's just a nice side effect of some other stuff I want to do. No idea on the timetable, though. (I am absolutely horrible at predicting how much work something is.)

 

 

(Emphasis, mine.)

 

I know that feeling. At est I can estimate how long it will take, in total work hours; but over what span of time I have those hours free, is another matter; and even then, it is only an estimate.

 

I encourage anyone who wants to add features to the programme to consider looking at the sources. I can make general guides on how to work on various aspects, but it truly is an experience best learnt, by doing.



#51 Zagut

Zagut

    Experienced Forumer

  • Members
  • Location:Somewhere in the universe.

Posted 18 June 2017 - 03:49 PM

would it be possible, in a future version, to add an Empty Bottle Item Class?

In the Item Editor, there could be a checkbox labeled "Bottle Item", which means you can only get the item if you have a spare empty bottle.

you could catch fairies in Bottles, and you can scoop water up in a bottle.

 

Also, Minish Cap style shops?

 

99.99% Sure this is never happening, but i just thought i'd say this


Edited by Zagut, 18 June 2017 - 03:50 PM.


#52 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 19 June 2017 - 02:38 PM

would it be possible, in a future version, to add an Empty Bottle Item Class?

In the Item Editor, there could be a checkbox labeled "Bottle Item", which means you can only get the item if you have a spare empty bottle.

you could catch fairies in Bottles, and you can scoop water up in a bottle.

 

Also, Minish Cap style shops?

 

99.99% Sure this is never happening, but i just thought i'd say this

 

To be honest, adding new items, while on the list, is a low priority for me. There are enough open, unfinished components that I am workin on at present; and new bugs introduced by the merge with master that do not stem from my work, that I may need to resolve. I would ideally like to add Z3 shops, dialogues, and other stuff to the editor. I would also like to add more audio controls, fonts, and a number of things that may not make it into the next release.

 

The only item class that is mandated in the next version, is a Generic Weapon itemclass, that gains all of its properties from the weapon editor. While all items that produce a weapon can get properties from there, not all of them can be overridden easily. Fire is the worst offender, and a generic weapon class that allows the user to set up an item that makes a weapon that uses all of the weapon editor features will be quite helpful.

 

I do not remember what distinguishes MC shoppes from Z3 types, but I would not likely add anything beyond the Z3 style of interface, and interactivity. Adding a bottle class would be appropriate only if such shoppes exist.


Edited by ZoriaRPG, 19 June 2017 - 02:41 PM.


#53 Deedee

Deedee

    Bug Frog Dragon Girl

  • Moderators
  • Real Name:Deedee
  • Pronouns:She / Her, They / Them
  • Location:Canada

Posted 20 June 2017 - 02:09 PM

I honestly fail to see what's so hard about combining Globals. I think it suffers from really shitty documentation/guides on how to do it.



#54 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 24 June 2017 - 06:02 AM

More Enemy Editor Upgrades



#55 Zagut

Zagut

    Experienced Forumer

  • Members
  • Location:Somewhere in the universe.

Posted 25 June 2017 - 03:43 PM

Here's an idea for the enemy editor:

The ability to enable 8 Directional movement for basic enemies, such as Moblins, goriyas etc.


Edited by Zagut, 17 April 2018 - 08:14 PM.


#56 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 27 June 2017 - 02:53 PM

I added the complete set of NPCData instructions.

 

This all falls under a new pointer, and allow reading, or editing the enemies tables.

 

Spoiler

 

I will probably add ComboData, next.


Edited by ZoriaRPG, 27 June 2017 - 02:54 PM.


#57 kurt91

kurt91

    Follower of Destiny

  • Members
  • Real Name:Kurtis
  • Location:Eastern Washington University

Posted 27 June 2017 - 03:11 PM

Man, this is neat! You're adding default features that I'd had to script the first time around. I kind of want to switch to this version for my quest just so that I can cut down on how many scripts I'm using and having to set up on a per-screen basis.


  • Jared likes this

#58 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 27 June 2017 - 07:28 PM



Man, this is neat! You're adding default features that I'd had to script the first time around. I kind of want to switch to this version for my quest just so that I can cut down on how many scripts I'm using and having to set up on a per-screen basis.

 

Here are three, more recent videos related to these updates.

 

Enemy Editor 'Size' Tab

 

You can set all of the npc proportions. Only those that have been enabled with the 'override' option will be used when generating the npc; but the values are still stored and may be used externally. These fields can be edited by script, as well as via the enemy editor.

 

Enemy Editor 'Weapon Sprite'

 

You may now change the sprite used by enemy weapons, on a per-npc basis from the enemy-editor. You do not need to change the weapon type, or any other properties to utilise this feature, however you may need to ensure that the sprite that you select is configured suitably, for the weapon that will use it.

 

This can likewise, be set with scripts, and the planned SpriteData-> ZScript pointer will allow modifying the properties of sprites by script, too.

 

ZScript: Screen->TriggerSecret(int flag) Demonstration Video

 

In addition to the old staple, Screen->TriggerSecrets(), I have added Screen->TriggerSecret(int flag). This triggers all secrets on the screen that use the specified flag. Furthermore, you can now access screen secret data directly, via script, using the following:

 

Game->GetScreenSecretCombo(int map, int screen, int secret);

Game->SetScreenSecretFlag(int map, int screen, int secret, int flag);

Game->GetScreenSecretCSet(int map, int screen, int secret);

Game->SetScreenSecretCSet(int map, int screen, int secret, int cset);

Game->GetScreenSecretFlag(int map, int screen, int secret);

Game->SetScreenSecretCombo(int map, int screen, int secret, int combo);

 

Thus, you can set up custom trigger events, secrets, and you can modify secret events anywhere in the game world. This is part of a much broader series of game-environment modification functions, all under the Game-> pointer, as follows:

 

Map Screen Variable Modification Functions, Game->

 

Note: All of these things have been added to ZC 2.55/2.60 (main). The merge with the 2.future stuff is nearly complete, with only a few things left (intentionally) un-merged. 2.future will branch off of the new master ZC builds, rather than off of 2.50.3, and it now uses allegro 4.4.


Edited by ZoriaRPG, 27 June 2017 - 07:29 PM.


#59 kurt91

kurt91

    Follower of Destiny

  • Members
  • Real Name:Kurtis
  • Location:Eastern Washington University

Posted 30 June 2017 - 02:16 AM

The two biggest ones that I was excited about was the "Size" attributes in the Enemy Editor (while there are multiple sizing scripts now, they're still a pain in the ass to use, if only for the added hassle when testing and repeatedly sifting through the script buffer for quick edits), and being able to change the graphics for enemy projectiles on a per-enemy basis. I have a script that I'm using that lets me do that already, but it only works on EVERY instance of a certain type of projectile on a per-screen basis. I can't really have multiple "levels" of enemies on the same screen without breaking the projectile graphics. This is a major help as well.

 

Much earlier, you mentioned being able to adjust the screen sizes. Is this only for doing things like GB-styled quests that use the screen dimensions of a Game Boy, or can I finally appease my OCD and get that missing half-row back from the bottom of the standard screens? It really bugs me that we lose those 8 pixels just because that's how the NES did things, without getting a choice. I'd love to have it as an option in the player that we can toggle, so quests that rely on those missing pixels for whatever reason aren't broken, but we can play with them visible in any other situation.



#60 Lüt

Lüt

    Germanize

  • Members
  • Real Name:Steve
  • Location:Chicago

Posted 30 June 2017 - 04:43 AM

 or can I finally appease my OCD and get that missing half-row back from the bottom of the standard screens?

Oh gaaaawwd please this, I get so tired of having to edit those back into every screenshot I take.

 

Regardless, the enemy weapon sprite options look nice, and are probably the foremost thing I'd use of the recent updates.





Also tagged with one or more of these keywords: Fork, New ZC, Version, Beta, Build

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users