The Quest Of Enoch

Chris H.'s Ultima / ACS-style game development system!

Moderators: Ice Cream Jonsey, joltcountry

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

The Quest Of Enoch

Post by joebonk »

Hello,

My name is Joe. New here, but love the ack, and it's basic style use of veriables and run commands.
Also really enjoyed playing u4 1/2. Amazing game. Well done.
Really i am a 3D modeler. My program also make and exports games with their own exe files.
But the process is very time consuming. When it comes to building whole worlds. I plan to build several world maps.
Also, I would need to learn python in order to have a save game. That sucks.
Anyways 2d sky to down view RPGs are very cool, are they not?
What would take me months in my 3D program will only take me weeks with ACK.

I spent a whole night writing out the entire story script of my game. And how to beat it.
All items. All quest. All powers. So, figurin that I would go over each item and decide how many veriables each would need to be written in the macros.

So I have some questions, if you don't mind, about what is possible or not.

1)Can I make a fight room upon the contact between the player and a monster?
a)That when the player tile is next to a monster tile, the player enters a "fight room" where the battle takes place.
b)If so, can this also not happen when I want?
2)How many world maps can I have? Can a town map be as large as a world map?
I hope to have 6 world maps, 6 or 7 castles, and several towns.
The world maps will be diffrent countries. And underworlds.
3)Is it possible to have a summon creature spell?
4)And can there be a stop time spell?
5)One of the powers the play will get is the ability to have control over time, depending on above question. Can a stage be replayed? Like if the quest took a wrong turn (my

game has many game ending paths and outcomes), Coudl the player be able to restart a stage and play against the same people again?
I know some characters in u2 1/2 has three conversation states, first, middle and last. But hawkwind continually updates his conversation.
If it is possible to go back and replay a quest, Would it be a matter of resetting the variables to what they were before the quest started?
I hope this question makes since.
6) is it possible to have a charm spell? Where you turn a monster into a freindly.

I know many of the answers are in the PDF, and I skimmed through them. And I downloaded the quick references pages.

I see the veriable for if the player is criminal or not.
I will have different localities and the quest will make you ally with people you intend to kill later in the game.
How many different styles of criminal can one have. Like, say a demon king. If you are on a quest for the demon king, demons can see you are no longer criminal to them.
But in other lands demons are still outlawed, so can you be criminal in one place and friendly in another? Perhaps I can make custom copies of the command to be criminal.

The game will be called "The Quest Of Enoch."

And it's loosely based on the beta isreal idiology, The book of Enoch, and Enoch The Ethiopian.
I don't know how much of a game I should say, in case anyone here wants to play it when it's done. It will use Ultima5 tiles, but takes place on earth.
And really won't have anything from ultima. Ultima uses 2 moons, and I'll only use one, and a similar style of serpents gates used in u7 serpent isle.
Each quest will require it's own world map. If only one world map is possible then I will have to link one town map to another which I really don't want to do.

Thank you for making ACK. I'm real excited!

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Post by Garth's Equipment Shop »

I welcomed you already in that other thread before I noticed this one. But welcome again anyway! That is a lot of questions. If rld doesn't beat me to it I will attempt to answer as many as I can over the next few days as time permits. I can't really answer much right now as it is very late. But I just wanted you to know your post was read by someone who is very interested in your game.

Most of what you want to do is possible. And you can have multiple worldmaps. Creatures can have touch macros assigned to them so yes you could have macros teleport the player to some combat room and summon the creature there or have it already there waiting and of course the touch macro on the creature could just instakill the creature so it wont be there when you come back from the combat room. I'll answer more questions tomarrow.

EDIT:

Just remembered something about touch macros.
the “Touch” macro runs when the creature scores a melee hit on the player
So I was thinking maybe you could have a tile that is completely transparent, that is, the tile is filled with nothing but your transparent color. And you set your random encounter creature to that invisible tile so that it can roam around the map freely without being attacked by the player. When it finally gets close enough and scores a hit before the player realizes it is there it is too late for the player to do anything about it and the touch macro is triggered. Then you can have the macro do whatever it is you want. You wouldn't even have to remove the invisible monster because you could have other macros [the map's entrence and exit macros] handle the resetting of the map's contents and wandering monsters. Actually I think it might do that automatically when entering and exiting worldmaps I forget.

Anyway, you would only need a single invisible creature to represent all random encounters since it is really just being used for the touch macro and you could place as many as you like on the map. Then in the touch macro you would randomly choose from a list of visible monsters to spawn in the encounter room the player is sent to. Or have many different encounter rooms with their own preset or random monsters and choose the encounter room to send the player to at random.
Last edited by Garth's Equipment Shop on Fri Sep 07, 2012 9:41 pm, edited 1 time in total.

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

Quest Enoch

Post by joebonk »

thanx for the toach enemey to fightroom
Towns can be world maps, I plan to make a giant nile delta map
And there can be many world maps
looks like objects can summon creatures when bumped, I have pyramid "obsticles" that will summon mummy when bumped, or examined
Also can be entered holding magic object stolen from the priest.

Summon creature would be cool, he can then teach it to his grandson noah, who will need it later.
Don't know yet about the stop time. Would probably have to make a obsticle object of creatures that replaces them otherwise, but it's not important.
The reason to replay missions is one of the things that urked me about some games is that some stages would have been enjoyable to play with new spells and objects obtained later.
So one of the ncps is a master of time, maybe they could send the player back, but this time with the powers and objects they have obtained.

Also, I have some pretty game ending outcomes that are enjoyable to continue playing, but was a bad choice for the player. And maybe the way out would be to go back in time to change it. But this time, have the new weapon that otherwise wouldn't have existed. Would be fun to see if a player figures this out.

Looks like any character can have several topics, 99, and their can be 255? dialouges. So should work fine.
In the varieble part, each ncp that requires this would see how advanced in the stage knoweldge you are. The number changing a step when quest completed.
Hawkwind (u4 1/2)seems to do this.

Charm spell, maybe turn a monster to "good" category. And resets when you leave the map. (or maybe spawned creature settings never change)

I have the first world map finished. Covers maybe 20% of the earth. Using mostly ultima5 tiles but also some changes and new ones.

Looks like there are only a select number of objects one can have, though I know things can be recycled, like portals and signs.
But do Spells count as objects? I see them in objects, I imported u4 1/2 game kit, and see that he had spells and some ranch weapons with the same name.
Maybe the spell uses the range weapon as the type of attack. If this is the case then I could delete the spells, and make those same weapons as power objects. Hopefully.

Back then (supposedly) peope lived a thousand years, anyways, The game starts where enoch is awakened by a heavenly voice and he is asked to go to they mighty giant kings of the earth, have them repent and turn over their glory to heaven ...or else.

Really, right now, since i've sunk my teeth, I only have one really big question:
One of the features is using words of power. I so far counted 38 I will need, but since it's a game feature, and every ncp uses them, I will probably have more.
If they are spells or objects, then there won't be many as, i beleive, there is a limit to how many objects can exist.
So, I also know that there is an input function (in a macro?), maybe it would be better to have only one object called "Use Word Of power"
Then have the game ask you to import it. Is this the best way?

Also, if that is the case, the player needs a way to remember them so I was thinking, a bmp of a scroll showing up, and words of power, once herd or learned, can be seen on the scroll. I would need a way for the scroll to know which name to show and which name not to show (since player hasn't learned it yet).
Would be great if words can show up as learned/stacked in that order, but if spaces between words happens then no problem there.

Ok, thanx for the input and intrest. One thing I will make is side ventures not important to game but a chance for player to go wampin and wuppin :)
ACK Was Well Made!

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Post by Garth's Equipment Shop »

On working within the ACK limitations on object creation.

Chris answered this before.

...the 254 limit on object creation:

- Don't make special weapons for creatures if you can help it; if you want your rat to have attack strength similar to a club, give the sucker a club
- For decorations that are visual but don't have any unique player interaction, use a single object with "set later" graphic rather than lots of separate objects. For example one "tree" object instead of many
- For objects with an obvious (and brief) use, like a key, use a variable instead of an object.
- Use macros whenever possible instead of actions on terrain

This of course only applies if you think you might need more objects than ACK will allow.

You seem to have a pretty firm grasp of the general possibilities ACK provides. And you have already dove in and started the design process. My only recommendation at this point would be to keep it up. Take breaks at regular intervals so you don't get burned out. Experiment with things you are unsure about and when you get stuck on something you can ask specific questions here with the details and we will try to help you sort it out.

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Post by Garth's Equipment Shop »

The game will be called "The Quest Of Enoch."

And it's loosely based on the beta isreal idiology, The book of Enoch, and Enoch The Ethiopian.
I don't know how much of a game I should say, in case anyone here wants to play it when it's done.
Forgot to mention how much I liked your story idea. It reminds me very much of Stuart Smith who started it all with Adventure Construction Set. He had a passion for ancient history and his games reflected that. Ali Baba, Hercules, and of course who can forget the legendary Rivers of Light! So you are in VERY good company my friend. ;)

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

quest enoch

Post by joebonk »

thanx garth. I like this place already.

I'm starting over. It took me two days to make the first map, but so what. it's well worth it. There can be copy tile sets in subfolders!!!
That means one tile for ground. So, in one map its grass, and another snow, another desert, and people too! Yes!
But where is the tile file, how can they be separately edited, and how to tell the game to look for it?

I also ran into my first snag. Importing tiles was multicolored wrong. So I figure it's the color palette. didn't match. My paint program has a palette maker, if you import an image, then it makes a palette based on its colors. So if I had the tile sheet bmp I could do that and then have ack color palette in my program. At least i think thats what I need to do. I' m assuming that one a palette is loaded, then it will save any image with those colors. if not then I might as well draw a copy in image editor, it's only 16x16 so how hard could it be, (time consuming) but labor of love i guess.

Maybe having the color palette loaded only gives you the option of painting tiles in your paint program that works in ack. I hoping it saves all images using the basic colors found in the palette. Also you can add a palette.bmp, but if i get knew tiles then this won't work, and the tiles I was already using got messed up. So changed it back.
But now starting over with better direction (multi sheets!)
Thanx again. One thing I have is plenty of time for it.

History is so cool. Sure fantasy games are fun, but history was just as cool. Only it isn't so much now. Now life is just easier. Maybe we lost something when life got easier. What am i saying, you have to be a warrior to get through phone robot messaging services :)

rld
Posts: 223
Joined: Sun Jan 25, 2009 2:17 am
Location: Dallas, TX

Post by rld »

Lots of interesting questions and ideas, and the game idea sounds very cool. Here is what I can remember off the top of my head.

Stop time:

This is an easy one. There is a feature added in the megapatch that lets you 'freeze' monsters (stop them from moving or attacking) for an preset period of time by setting the 'T' macro variable (after setting a bit in 'Z' to enable the feature). See the patch documentation for more details.

I believe the player can still attack monsters while they are frozen, so if you don't want this to happen, you can disable the attack command (another patch feature) while time is frozen.

Fight rooms:

This is easy enough. Use room-type regions (not the scrolling map worldmap type) to create individual rooms for fights. In each room, place 'wandering monsters' with appearance odds of 100%. When the player appears in the room, the engine will populate all the wandering monster spaces with the specified monster. As long as the player can't leave the fight room until all monsters in the room are killed, you will always have the right number and types of monsters generated when the player enters the room.

You can make multiple fight rooms, each with a different number/types of monsters, and send the player to one of them randomly by setting the player's LOC location variables in a macro. Make all the fight rooms the same size and shape (more or less), so that the player's entrance location can always be the same. Then you just do something like this:

X2 = LOC[X]
Y2 = LOC[Y]
Z2 = LOC[RGN] (or whatever it's called)
LOC[RGN] = <region>
LOC[RM] = <random>
LOC[X] = 2
LOC[Y] = 2

For each room, clear a 'monsters killed' variable (like C) before the player enters. As each monster is killed, add 1 to the C variable using the monster's death macro. Have a 'door' space for the room exit that triggers a macro, and have the door space only be passable to the player when
C > #, where # is the number of monsters in the room less one. This way, once all the monsters in the room have been killed, the door will automatically open.

The door space exit should trigger a macro that restores the player's original location using the 'saved' location variables as shown above.

Probably the easiest way to trigger the random encounters would be with a step macro, that sends the player to a fight room based on some % of random chance. The step macro can be different for each region, so players have a chance of encountering certain monsters in one region and other monsters in another.

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

quest of enoch

Post by joebonk »

Excellent. great news. I have three game ideas, I'm tackling the first. I renamed it METATRON. subtitle "quest of enoch", mainly because i can fit the name in the editor and it sounds cooler, but i like the more humble quest of enoch.
So i do away with spawning allies for now.
And also, for this game, i won't use fight rooms for every fight. Only powerful boss enemies.
I saw the freeze time in the update page, i downloaded 3.2. Does this have the megapatch already built in? I did instal a patch and hope it wasn't an older one.
I will have an evil item "Skull of Adam" who's soul will always come and attack you until you are rid of it, "but how, the player seem to can't get rid of it." So that will be interesting. I guess he will spawn randomly with an hourly macro.
One cool trick I implemented tonight was laval randomly flowing across the floor of a dungeon.
I drew the room map, then ran a macro to draw the same tile objects the same, but the have random moments of them continuing to be replaced by lava flowing by. maset x y z. yet it says this will kill any creature on that tile which i am assuming is a monster and not the player, but if it is the player then it will only happen on tiles triggering the effect but which isn't changing at that paticular moment. I will do more testing.
I saw Chrise's sign object say "set later" but every time i look for it in setting actions, set later never is available.
For my words of power, I first used one macro, that used all the b2 through z2 variables. to signify if a word was learned or not. Then I have a bmp scroll image for each word.
Then I had another variable increase with each arrow key press to select which one, but the work was intense, having three or four different times of asking if a variable was this or not. I'm sure an equation would have simplified that figuring, but i still needed to know if a word was learned or not. So on the third try, I just ask if the variable is yes, and then show the bmp and ask for its use, if the variable is false, then show the next bmp and getkey all over again.
I getkey only once for all of them the second try, but was very intensive work. this third try works for sure, and even though i have to get key every time, i am still only using one or two macros at the most and before i was still typing a lot of lines to keep track of what bmp i was on and what question is was on.
With some words already known, and 25 to learn thats potentially an endless amount of spells that can be cast in the game without making objects.
Big bosses, like satan or death, will need fight rooms as they will constantly summon other creatures. And death shows up at many world maps.
I can't fill then start game character's inventory. I want to give him a dagger but it won't allow it, or armor. Not a big deal he gets it in his him before he sets off.
Chrise's game had monsters in dungeons die once killed and if you go back in the room, they wont be there any more, but in mine they still are and if i don't kill them and go back another gets spawned and the original is still there. if i keep going in and out, maybe the room will fill up with monsters.
Not every monster did this in Chrise's game. Some always randomly spawned while others only spawned once.
Which makes me wonder, if a boss is killed, will they get spawned again later? Maybe a macro has to keep track of who is alive and dead.
I want to use a mosaics for some ship travel, instead of player piloting. So that the stages keep in order before he can truly roam free.
Also i seen somewhere that you can set the tile graphic later on "portals?" again, i couldn't find the set tile later option. But that would be awesom. Only one portal object that can use any tile when placed on the map.
And i assume it is an entrance macro for maps that decide if a substitute tileset in a subfolder is to be used or not. I know save game load game will return the tiles to default, but this is acceptable to me.
Can objects be made and not use a tile at all? Like spells don't?
For instance, a weapon that does 3 or 6 points damage, but will never be dropped or picked up because it is only used by terrain. Then again it could be a donut tile if it will never be seen but still, do all objects have to have a tile?
Perhaps a weapon can be a macro instead of a weapon, which is better then wasting the object number in the first place.
At first this game was a funny hobby. But then I read about cromagnum man, how he was 7 and half feet big and with a skull almost twice ours. Strange, out brains are getting smaller as we "evolve?" Then i saw in siberia a supposed ancient machine fossilized in 400 million year old stone. But of course we know a wizard just turned a time machine into stone, lol.

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Re: quest enoch

Post by Garth's Equipment Shop »

joebonk wrote:thanx garth. I like this place already.
Quite welcome. Glad to here it!
joebonk wrote: There can be copy tile sets in subfolders!!! That means one tile for ground. So, in one map its grass, and another snow, another desert, and people too! Yes! But where is the tile file, how can they be separately edited, and how to tell the game to look for it?
Answer: I'm assuming this is one of the features rld added in one of his megapatches. Theres so many megapatch features I can't remember them all and haven't gotten around to experimenting with many of them. So I cannot really help much with anything megapatch related. I can tell you however that swappable external tilesets is definitely not an un-hacked ACK feature.

As for the default tiles that you see when you load any built in adventure kit, you will not see any files representing those tilesets but you can easily use dosbox's built in screen cap command to make your own and they will always be saved perfectly as 8bit 256-color bmp files which you can then edit and import back in. The importer is extremely unforgiving as you've already discovered. Ill cover that in the answer to your next question.
joebonk wrote:I also ran into my first snag. Importing tiles was multicolored wrong. So I figure it's the color palette. didn't match. My paint program has a palette maker, if you import an image, then it makes a palette based on its colors. So if I had the tile sheet bmp I could do that and then have ack color palette in my program. At least i think thats what I need to do. I' m assuming that one a palette is loaded, then it will save any image with those colors. if not then I might as well draw a copy in image editor, it's only 16x16 so how hard could it be, (time consuming) but labor of love i guess.
ANSWER: When you import your own tiles ACK assumes a couple things right off. 1. That your file is 320 pixels wide by 200 pixels high, 256 color saved in 8-bit Bitmap format. Anything else will be unrecogniseable in ACK. 2. That your image's palette is the same as the default ACK palette unless there is a palette.bmp file located in your game directory. At this point you have two options. If you want your new tiles in your favorite paint prog to just use the default ACK palette you will need to open any of the adventure kits that comes with ACK, open the tile editor, press enter like you would to edit a tile, and press s to show the color palette. Then press ctrl-f5 to make DOSBOX capture the screen. Then open that captured image in your paint program and in your palette options
save it's palette in the paint program's special palette format.
Then when you save or convert your tileset images from rgb to indexed you can select that palette you saved. And to make your custom palette.bmp you can simply save a copy of your custom tileset import image with the non-ACK palette to the game folder but renamed to palette.bmp.
joebonk wrote:Maybe having the color palette loaded only gives you the option of painting tiles in your paint program that works in ack. I hoping it saves all images using the basic colors found in the palette. Also you can add a palette.bmp, but if i get knew tiles then this won't work, and the tiles I was already using got messed up. So changed it back.
ANS: Yes any image dosbox captures from an ack adventure will automatically be saved with the default ack palette unless there is a custom palette.bmp in the loaded game's directory.

When you are working with your own custom tiles and palette it helps to keep a master tileset [one combining all your separate 320x200 import sets] within a large enough canvas to contain all the tiles you plan to use. As you create newer tiles you should add them to this master tileset. Then when ever you add more tiles to that master tileset you just convert it to indexed again [most full featured graphics software have many nice features that only work when in rgb mode so I usually switch to rgb mode to edit or create tiles] and save it as a bmp and overwrite the old palette.bmp in your game directory with the new one.

I think ack only reads the color index of the palette.bmp image so it can be any size if im not mistaken. Ill have to test that as I cant really remember for sure.
joebonk wrote:History is so cool. Sure fantasy games are fun, but history was just as cool.
ANS: Couldn't agree more.
joebonk wrote:Only it isn't so much now. Now life is just easier. Maybe we lost something when life got easier.


ANS: Definitely true in many ways. Although if you also mean to imply that modern history is not as cool as ancient history I would beg to differ. When I was younger I was all about ancient history and mythology and thought all modern history a complete snooze fest. But I have since then gained an insatiable appetite for modern history especially where it has informed and inspired the pulp fiction genre and it's many splinter genres spun from it such as military/government/secret-society/espionage/conspiracy/spy stuff, westerns, post-apocalypses, science-fiction, superheroes, space-operas, survival horror, etc.

joebonk wrote:What am i saying, you have to be a warrior to get through phone robot messaging services :)
ANS: lol. And of course British humorists taught us the hardships of living in a modern beaurocracy and many a dystopian author and film maker have described in graphic detail just how much worse it is going to get if we keep up all this industrialist, corporatized, consumerized, beauracracized, politicized and post-modernized non-sense. ;)

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

quest of enoch

Post by joebonk »

Thank you again. I watch fareed zarquawi on sundays, mainly because it's hard to find a show that talks about world issues.

I am using mtpaint (mentioned in another thread) and it's fantastic. Especially able to edit palettes. And save custom palettes. And if I want an image or tile from another set, I load that tile and move its palette color locations to match mine as close as possible, then load my custome palette, and if colors are still different (they will be close enogh) I just change them then. I have to change them first, by themselves as my palette originally started with only 16 colors in the first 16 slots. But many tiles and images have their colors spread over 256 slots, most are dark, so I have to rearrange the palette slots before pasting them to my own otherwise, most of the 200 slots or so on my palette are black.

I was thinking, ealier about switching tilesheets, If I have a temperary palette.bmp load for a new map, then I could at least change the color of tiles. Then just do a palette fix when returning. But who knows.

I have many maps done. I also have a prison map. The player can get arrested. There will be three sentances. 3 days, a month and lifers. Also you have to do work. I guess an hourly macro can know when it's time to work. At the entrance of a mine, you get a pick axe and have to get gold. And it isn't done until you get some, then go back to gaurd and a converasation will trigger the axe and gold are given to the gaurd and you get food in return and then the location is back in the cell. There are ways to escape but the player will have to figure it out. Also, the players items have to be taken before going to jail. And I figure that a macro can ask what items are in the ivnentory, and then deposite them in a chest or when the sentance is done. A similar thing happened in ultima 7 serpent isle. Also in ultima 5 you could go to jail.

I need to figure out how to hole up and rest. And their needs to also have two kinds. Camp out doors and sleep in a bed. Each leads a player randomly somewhere in the dream world. And you dream as long as it takes for your hit points to get to maximum. I figure you get ten actions for every hp that increases during sleep. So if you want a long time in the dream world, then make sure your hit points are close dead. Sleeping then would send you to another map (and remember where you fell asleep), then everytime you move in the dream world map, the tiles would increase your hp as you walk over them, and when they match the hpmax then you wake up.

In u4 and u5 there are whirlpools. And when you fell into one, then you got relocated. So I figure the best way to do this with ack is to make a ncp with a whirlpool tile.
Then have it placed as wondering life, and then give it a toach macro. I think someone said earlier that a wandering life does not need a weapon. Also if it has no weapon, and then set to attack, then the whirlpool will appear to be getting closer to you. This seems good, because a ground tile can have only one other tile for animation while a ncp can have four tiles for animation.

To save space for tilesheet, I sometimes use only to other tiles for animation, repeating one. That way I can fit more tiles.

I was wondering wether ncps can have scheduals. Or mopaths. Doesn't matter but I did notice that u4part2 had two times for towns, where the people would be gone and replaced by different people at night. Also you couldn't get into some doors at night.

There will be a possee that comes after the player, and here would eneter a fight room. And the battle ends if one of the monsters die. Later on the same possee will meet up with you and it will be missing the last person killed.

Are there times when the player icon can change? Like if you cast a "change into animal spell". Becuase the player can do this (hopefully) and also becomes other apearances for given situations. What I have figured so far is that a vehical can change into another icon when it is boared. So, maybe the spell could make you board this vehical (which comes with an iditional weapon) :) But how to do this without having to exit the vehical/spell. Perhaps the effect only last so long. If these are the case then there would be a macro command that allows a vehical to boared and exited, and or simply change the player's icon.

Basic allows more leeway. Like you could have something like:
if a = 32 and bn=2 then ar=5, t=t-1, 96

where then can have follow up functions by just adding a comma. And then finally you could put the 96 to go to line 96

Also when asking if, you could ask two ifs by using "and".

This would have saved some programming, but it is very nice to use these commands again. So I thank you guys for making the macro commands.

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Re: quest of enoch

Post by Garth's Equipment Shop »

joebonk wrote:I am using mtpaint (mentioned in another thread) and it's fantastic. Especially able to edit palettes. And save custom palettes. And if I want an image or tile from another set, I load that tile and move its palette color locations to match mine as close as possible, then load my custome palette, and if colors are still different (they will be close enogh) I just change them then. I have to change them first, by themselves as my palette originally started with only 16 colors in the first 16 slots. But many tiles and images have their colors spread over 256 slots, most are dark, so I have to rearrange the palette slots before pasting them to my own otherwise, most of the 200 slots or so on my palette are black.
There is a much much easier way to deal with the conflicting palette issue while working on new tiles or integrating new existing tiles into your current set. Once again rgb saves the day. If both images are switched to rgb mode you can then safely and effortlessly copy and paste tiles into your masterset. No need to mess with the palette.

Then when you have all the tiles you want in the master set you just switch it from rgb to indexed mode. I usually try to stick to no dithering when switching to indexed so that most of the colors are left intact, but in some cases if the new pasted in bits add too many new colors to the image you may get unforseen results when it is reduced to 256 colors and you may need to test the various dithering and color palette options in the conversion window to see if you can get better results.

Another option that sometimes works [if your current master tileset palette is diverse enough] is to convert the image you are pasting tiles from before you copy anything from it. Instead of converting it to rgb before importing [or if it came in rgb to begin with convert it to indexed] just load the image palette you saved from the master tileset image and see what happens. If it still looks ok then go ahead and copy and paste it into the master tileset as is. If you dont like it you can always edit it by hand.

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Re: quest of enoch

Post by Garth's Equipment Shop »

joebonk wrote: I was thinking, ealier about switching tilesheets, If I have a temperary palette.bmp load for a new map, then I could at least change the color of tiles. Then just do a palette fix when returning. But who knows.
Hey that would be awesome if using the EXEC table we could have a batch file program that switches out the palette.bmp. Turn based color-cycling! :D I'll have to try that sometime.
joebonk wrote: I I have many maps done. I also have a prison map. The player can get arrested. There will be three sentances. 3 days, a month and lifers. Also you have to do work. I guess an hourly macro can know when it's time to work. At the entrance of a mine, you get a pick axe and have to get gold. And it isn't done until you get some, then go back to gaurd and a converasation will trigger the axe and gold are given to the gaurd and you get food in return and then the location is back in the cell. There are ways to escape but the player will have to figure it out. Also, the players items have to be taken before going to jail. And I figure that a macro can ask what items are in the ivnentory, and then deposite them in a chest or when the sentance is done. A similar thing happened in ultima 7 serpent isle. Also in ultima 5 you could go to jail.
That sounds awesome. Gives me all sorts of ideas!
joebonk wrote: I need to figure out how to hole up and rest. And their needs to also have two kinds. Camp out doors (Global Step Macro that checks region and rm to make sure it is outside, and perhaps check if it is an area where it is safe to sleep if you want that to be a factor. Also could check to make sure it is night time.) and sleep in a bed. (EDIT: Bed space triggers bedsleep macro when player stands on it. I would ask player if he/she wishes to sleep or not when space first entered) Each leads a player randomly somewhere in the dream world. And you dream as long as it takes for your hit points to get to maximum. I figure you get ten actions for every hp that increases during sleep. So if you want a long time in the dream world, then make sure your hit points are close dead. Sleeping then would send you to another map (and remember where you fell asleep), then everytime you move in the dream world map, the tiles would increase your hp as you walk over them, and when they match the hpmax then you wake up.
Sounds like a really cool idea.
joebonk wrote: I In u4 and u5 there are whirlpools. And when you fell into one, then you got relocated. So I figure the best way to do this with ack is to make a ncp with a whirlpool tile.
Then have it placed as wondering life, and then give it a toach macro. I think someone said earlier that a wandering life does not need a weapon. Also if it has no weapon, and then set to attack, then the whirlpool will appear to be getting closer to you. This seems good, because a ground tile can have only one other tile for animation while a ncp can have four tiles for animation.
Yep. Your learning all the best tricks! ;)
joebonk wrote: I I was wondering wether ncps can have scheduals. Or mopaths. Doesn't matter but I did notice that u4part2 had two times for towns, where the people would be gone and replaced by different people at night. Also you couldn't get into some doors at night.

To make monster pathing you can put the monster in a specially made vehicle object that is set to only be able to travel on certain kinds of terrain. Then just have duplicate tiles of the terrain there and use the one set for where the monster can travel and the other for invisible obstacles preventing the monster's movement. To the player this path will be invisible. Hopefully that was as clear in text as it is in my mind. If not just ask for clarification.

One thing Chris did in his epic Ultima parody adventure was to duplicate towns and then customize the copy to make it more suitable for nighttime. Then whenever the town is entered which ever portal or macro is taking player there checks the time and sends the player to either the daytime or nighttime version of the same town. Each map can have it's own darkness level [or fog of war] setting to simulate either the time of day or some other reason that the player cant see as far there (such as a dense forest or smokey or foggy place).

But if the only thing different is doors and darkness you can just let the game decide on the room or map's darkness settings based on time of day and add something to the door objects or macros to make them locked at night.

joebonk wrote:Are there times when the player icon can change? Like if you cast a "change into animal spell". Becuase the player can do this (hopefully) and also becomes other apearances for given situations. What I have figured so far is that a vehical can change into another icon when it is boared. So, maybe the spell could make you board this vehical (which comes with an iditional weapon) :) But how to do this without having to exit the vehical/spell. Perhaps the effect only last so long. If these are the case then there would be a macro command that allows a vehical to boared and exited, and or simply change the player's icon.
Very simple. Just use set icon in your macro.
SET ICON = tile number or variable
You can use a variable reserved just for this purpose if you wish and then just set that variable to which ever tile is appropriate when it is called for in any macro. And in your global step event macro include a line to set icon = variable.

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Re: quest of enoch

Post by Garth's Equipment Shop »

joebonk wrote:Thank you again. I watch fareed zarquawi on sundays, mainly because it's hard to find a show that talks about world issues.
Just now looked him up as I had never heard of him. Found this quote:
"I feel that's part of my job... which is not to pick sides but to explain what I think is happening on the ground. I can't say, 'This is my team and I'm going to root for them no matter what they do.'" ~Press, Joy (2005-08-09). "The Interpreter". The Village Voice.
I like him already!

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

quest of enoch

Post by joebonk »

Awesome. The bed asks when to sleep. A global macro for other instances. Some commands I'm looking for (I use the search in the pdf) I read through it too.
I saved a bunch of objects with macros, One object can cast many spells, I also made a magic missile weapon. Now i need a macro to allow a player to attack someone with it for one try. A vehicle can come with a weapon, so i think it is possible to attack with an unreadied weapon. A spell object can attack with a magic missile. But I need the macro to allow it instead of a spell object (as the object using it is a miscellaneous object)
In u4art2 ships had their own hp and this replaced the hp view on the right side. I'll look at the abject.

Anyways, heres the first screenshot
Image

Uploaded with ImageShack.us

Thank you again for all the help.

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Post by Garth's Equipment Shop »

Lookin good!

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

Metatron

Post by joebonk »

Hello,
I have maybe 40 to 50 maps created.
I figured out how to do party members or alleys.
With the set loc[x] and [y]
Quest of Enoch will allow a double or dream body to be projected. Since every aspect of the game is a stage in itself, from sleeping, to dyeing, and so on.
First, make an object that uses the same tile of player. Then
Replace the spot where the player is with this object,
then set loc x and y to a new location.
If my game, at first you only take one turn for each player.
Enoch moves a space or does something. And then the double
moves a space or does something. One at a time, until your
magicpoints are all used up. But, if your inteligence is stronger, then you could do tens moves as enoch, then ten moves as double, and so on and so forth until mp is all used up. Now returning to enoch will allow mp to regerate, so it extends further, however little, the time to be a double.
Next. You will be able to wake up as either the double or the
original enoch. The double, being a dream body can not
perform all the actions a body can, and vice versa.
If one wanted to implement party members, then the party member would have to be a space tile next to player
(put on of these here), then when it's time for the game to be that party member, (take all these from the area___the party member space tile) and then replace the player's icon with that of the party member's tile.
The same goes for going back to enoch.
A macro would have to run for each and every action.
I believe I saw a macro command that sets how long a player can use a spell. So maybe that would help, and the macro only loads so longs as that variable is active.

I have music for the game. Some are songs which I hope I can use. The game will be free and no money will be made off it. Yet, at times, the music gets a little choppy when too
many things happen at once. maybe a dosbox cpu issue.

I can't figure out how to set fly. I know a macro can do it. But the manuel said a vehicle can be set to fly by pressing F key, but when i do, a tile object is selected instead, like #10 grass.

This fly would be a good setting for the double. Since he probably shouldn't be able to use a portal... but then again.
the set loc can set which map a double can be on as well.
Intresting concept, right? To be able to take turns playing two fronts of a game? A hundred turns as enoch, then a hundred turns as the double. You could accomplish more.
Multitasking enoch.
In ultima 6, you can select an individual player and roam off
on your own. I used the cheat and had quenton the ghost be the party member, who can fly through wall and also can't use a portal. If ever he encountered an enemy to strong, i would switch back to avatar selection, then select quenton again and the enemies were all gone. I'm sure that
cheat would work on regular party members... the monsters
being gone.
But I think ack remembers monster position, which is more
realistic. Point is, it's possible.
If one really wanted to same some programing, then they could give monsters toach macros that enter fight rooms.
Then make the player tile smaller. And when more party members joined, the tile got bigger, or was replaced by more then one small player.

Ack is fun to use!
Last edited by joebonk on Sat Oct 06, 2012 12:02 am, edited 1 time in total.

rld
Posts: 223
Joined: Sun Jan 25, 2009 2:17 am
Location: Dallas, TX

Re: quest of enoch

Post by rld »

joebonk wrote: I saw the freeze time in the update page, i downloaded 3.2. Does this have the megapatch already built in? I did instal a patch and hope it wasn't an older one.
The v0.8 version of the patch (linked from the sticky post) is the most recent version - it is compiled against the ACK source release for version 3.251.

The patch isn't built in - you have to install it in your ACK directory, but this is basically just copying in two files - see the readme for more information.
joebonk wrote: One cool trick I implemented tonight was laval randomly flowing across the floor of a dungeon.
I drew the room map, then ran a macro to draw the same tile objects the same, but the have random moments of them continuing to be replaced by lava flowing by. maset x y z. yet it says this will kill any creature on that tile which i am assuming is a monster and not the player, but if it is the player then it will only happen on tiles triggering the effect but which isn't changing at that paticular moment. I will do more testing.
Not the player. The reason the manual says that MAPSET will kill any creature in that location is because it overwrites whatever the top object in the stack is in that location. Creatures are treated as a special form of object by the ACK engine, which means that you can actually move them around using MAPGET/MAPSET (they are object type #255, with a custom data field that contains the creature instance number).

The player isn't actually represented by a map object, so you don't have to worry about overwriting it.
joebonk wrote: I saw Chrise's sign object say "set later" but every time i look for it in setting actions, set later never is available.
You have to create a 'custom' object instead of a regular one (CUSTOM SPACE instead of SPACE, CUSTOM OBSTACLE instead of OBSTACLE) for this to work.
joebonk wrote: I can't fill then start game character's inventory. I want to give him a dagger but it won't allow it, or armor. Not a big deal he gets it in his him before he sets off.
You should be able to do this in the configuration editor. It won't let you edit the starting inventory?
joebonk wrote: Chrise's game had monsters in dungeons die once killed and if you go back in the room, they wont be there any more, but in mine they still are and if i don't kill them and go back another gets spawned and the original is still there. if i keep going in and out, maybe the room will fill up with monsters.
Not every monster did this in Chrise's game. Some always randomly spawned while others only spawned once.
Which makes me wonder, if a boss is killed, will they get spawned again later? Maybe a macro has to keep track of who is alive and dead.
Monsters that are created by 'wandering life' squares will respawn (as long as there is not already a creature in that location) according to the %odds chance every time you enter the area. Monsters that are placed directly on the map in the editor won't respawn when killed. If you can actually see the monster's tile in the editor, it's not a 'wandering life' creature; these show up as 'W's.
joebonk wrote: Also i seen somewhere that you can set the tile graphic later on "portals?" again, i couldn't find the set tile later option. But that would be awesom. Only one portal object that can use any tile when placed on the map.
I don't think you can do it for portals, because the 'custom data' field that would contain this information is already used for something else for portals. For the same reason, you can't do the 'set later' tile option for custom spaces or custom obstacles.
joebonk wrote: And i assume it is an entrance macro for maps that decide if a substitute tileset in a subfolder is to be used or not. I know save game load game will return the tiles to default, but this is acceptable to me.
That's probably the best way to do it. There is a patch feature that lets you designate a macro to call automatically when a game is restored; you can do things like restore the proper tile set for the current region with this macro.
joebonk wrote: Can objects be made and not use a tile at all? Like spells don't?
For instance, a weapon that does 3 or 6 points damage, but will never be dropped or picked up because it is only used by terrain. Then again it could be a donut tile if it will never be seen but still, do all objects have to have a tile?
Perhaps a weapon can be a macro instead of a weapon, which is better then wasting the object number in the first place.
Objects always have to have a tile, but they don't have to have a UNIQUE tile, so if you have an object that won't ever be seen by the player (because it's only used by a creature or something like that) you can have it use the same tile that some other object uses, so you don't burn an extra tile that really isn't needed.

You will still burn an object number this way, though. Some good ways to conserve object numbers are:

o Instead of having lots of different objects for fixed terrain (like obstacles that don't do anything) have a generic obstacle with a 'set later' tile and use this to display different terrain objects. I believe this was the 'SOMETHING' object in the U4PART2 game.

o If you have collection objects like keys or books that the player might carry, that you need to keep track of, you can do this with variables (or variable bits) instead.

o Invulnerable creatures (that are set to stand still) can be used in place of obstacles, especially if you want something that has more animation frames.

o Instead of stacking lots of objects to implement sequences of events (like a ACTIVATE ALL on top of a PLAY SOUND EFFECT <set> on top of a SHOW SHORT MESSAGE <set> on top of....etc....etc....), you can just use one object that triggers a macro, and just do everything in the macro.

joebonk
Posts: 112
Joined: Mon Aug 27, 2012 3:16 am
Location: las cruces, nm

Post by joebonk »

thank you rld. Very helpful information.
I figured out the inventory problem, which is to hit the plus or minus key to add and how many to add. Sorry.

I was thinking and maybe it could be added in a later patch.
To conserve space in a macro list, that a second entry
could be added to running a macro, for instance,
execute macro#13 12. The 12 could be the line number it
starts on in the macro. So if you write a macro for a spell,
and it ends at line 11, you could continue to use the same
macro for other stuff. Why? because sometimes
I have to add macros with only one or two lines in them,
and it seems a shame to waste a whole macro on two lines.
guess its not important.

I wonder if it is possible to sell vehicles. I'm trying to make a camel vender. The first one I made relocates the player
to the location where the camels are, and only camels can
ride over fences. So you can't get to them unless you buy
one from the vender.
But I used a macro for this, and wanted to use it again, 'ceptin the new map i was needing it for was much larger and so the set loc x y was somewhere else.
I guess I could rewrite that part, where the macro finds
out where the player is first and then just add
5 spaces to it and always make sure the camels are within the same range. This way there is never an actual set location, just adding more spaces to which ever one the player is on.
I know I could make a door that only lets you pass if a verible is set, (set during a dialouge with a camel vender)
And then passing the tile resets the veribal back to zero. I could use this same door with hotels. But then I am making another object when a macro accomplish it without making an object. But then more I think about it, a door opening by active verible would by handy in all kinds of situations.
Because I made a door that is an obsticle and will never open, but this could be replaced by this door as in those instances the verible which opens it would never need activation.

I want to make demons fly but I don't know how. WHen I set the vehicle, the manuel says to press F key for fly, but
this only shows a random tile object showing up as the vehicle like #10 grass. Also would like to make a magic flying carpet like in ultima 5.

Not really sure how activate all underneath works.
I first tried it with making a stack of objects under a chest.
Thinking the command would bring everything underneath to on top. But didn't do this.
So, I made two chest. One that disappears on examining, and one that does not. Then I learned that there is a command that allows an object to disappear only if it is on top. That way I can make only one barrel object and only one chest object, which only disappears if on top of other objects but will not when it is on bottom.

In macro editor, when I say put one of these here, becuase i want to make a fire object, it doesn't happen. And when I wanted to summon a creature, when I said which creature, it said 'none yet'.
QA PUT ONE OF THIS HERE: #13"
but just said none yet.

When I release the game should I do it here?
I'll just post a link. I guess I should use the game folder and people could put it in their ack directory.

I noticed in the patch that z.0 z.1 z.2 variable bits could be set. So, if i put set r.1 to 1 and later ask if r.1 = 1 then
would this be the case? If so then I have an endless source of variables to use, I could use only one variable for the words of power. r.0 could be the first and r.1 could be second, and so on.
I need the macro to know if a word of power is known by the player or not and presently i am using b2 through z2.
But if you can store values inside the variable's bits then this is excellent news.

User avatar
Garth's Equipment Shop
Posts: 638
Joined: Fri Dec 05, 2008 5:55 pm
Location: Festering Foothills
Contact:

Post by Garth's Equipment Shop »

joebonk wrote: for instance,
execute macro#13 12. The 12 could be the line number it
starts on in the macro. So if you write a macro for a spell,
and it ends at line 11, you could continue to use the same
macro for other stuff. Why? because sometimes
I have to add macros with only one or two lines in them,
and it seems a shame to waste a whole macro on two lines.
guess its not important.
Nice idea. So like a single multi-macro that could be called like a function that does different things depending on the variable passed to it.

You could simulate this effect with the existing system. Make your macro with all the smaller macros in it each separated by stop lines so they can only execute via goto statements.

Code: Select all

Macro #1
Multi-Macro

10 First command
11 Stop

12 2nd cmd 
13 stop

etc.. 
In your global step macro you can have a line that runs the multi-macro constantly.

For this example I would add the line "Macro 1" to some place in my stepmacro. [EDIT: If you want each instance of this to run once you could add a line here after the macro line, setting the variable you are using back to zero].

In the multi-macro before all those 'micro-macros' occur you would check the state of a global variable which you could set from any other macro or object action at any time to run a different part of the multi-macro. For this example lets say we were using A as our MultiMacro variable:

Code: Select all

Macro #1
Multi-Macro

1 If A = 0 then
2 stop
3 Goto A 
&#91;you could add lines here to ignore A when it is set to anything besides the line numbers you are using here. That way it could still be used in object actions for other purposes - Using A-D will let you set this variable in object actions directly if you wish.&#93;
4 stop

10 First command
11 Stop

12 2nd cmd 
13 stop

etc.. 
Each time the multi-macro runs it would first check the global variable and then goto whichever line number the variable is currently holding.

It could potentially cut down quite a lot on the number of macros you are using though you would have a lot of line-numbers to keep track of everytime you need to run one of those multimacro segments from some object or other macro where you change that global variable to the line number you need.

EDIT: Also remember if you are running it in the step macro it will run again every step you take so be sure to reset the variable to zero before every stop in the multi-macro so that it doesnt keep running the same thing over and over unless of course that is what you want to happen. EDIT AGAIN: I went back and added a new edit to the part when I give example of using the step macro. Might be best to add just one line there to reset your variable to zero rather than many lines in the multi-macro.

WHen I set the vehicle, the manuel says to press F key for fly, but
this only shows a random tile object showing up as the vehicle like #10 grass. Also would like to make a magic flying carpet like in ultima 5.


Looks like you just found a bug. I just tested it myself and got same result. I put a creature in the middle of some mountains and set his vehicle with the F key which displayed some random terrain [in my case my world map space #18] in the vehicle field. When I playtested and moved around for a while the creature never moved. Also for some reason its picture is showing as a black tile even though in the editor it shows it is my tile for a Rad Toad with animation tiles of it jumping up and down. Though now that I am rereading the manual it does seem to emphasize the word SPACE when it describes what fly works on. Maybe it is not true fly mode and so doesnt actually go over walls and other obstacles. Kind of makes sense for walls as they usually imply having ceilings but in pretty much any other obstacle context you would think fly would fly over them.
Not really sure how activate all underneath works.
I first tried it with making a stack of objects under a chest.
Thinking the command would bring everything underneath to on top. But didn't do this.
So, I made two chest. One that disappears on examining, and one that does not. Then I learned that there is a command that allows an object to disappear only if it is on top. That way I can make only one barrel object and only one chest object, which only disappears if on top of other objects but will not when it is on bottom.
If you mean the take all macro command you might want to be careful with that. You dont want it taking all the top items before the player even gets a chance to see them. Every object has at the bottom settings for if and when the object will disappear. Only when destroyed? In which case you remove the items invulnerability and give it a strength. And you can define which item if any will replace it.

If its something you plan to have occur in stacks then you would have it just disappear and not be replaced so that whatever is underneath it can then show up. You can have it disappear when the action on it is triggered as well. Such as a message space. Reading the message triggers its action and thus it would disappear revealing whatever is underneath.

The actual built in 'Activate All Underneath' action is partially broken. Check out this Quick Reference Page for what this action works with and what it doesnt:
Limitations: Activate All Underneath
In macro editor, when I say put one of these here, becuase i want to make a fire object, it doesn't happen. And when I wanted to summon a creature, when I said which creature, it said 'none yet'.
QA PUT ONE OF THIS HERE: #13"
but just said none yet.
Maybe you are trying to use it in a macro that isnt called from within an object's action? From the manual on QA macro command:
"Note also that this will ONLY work if the macro itself is called by an action. Macros called other places (creature death macros, intro macros, step macros, hourly macros) will not be able to queue actions."
When I release the game should I do it here?
I'll just post a link. I guess I should use the game folder and people could put it in their ack directory.
Yes here is a good place to start. I'll then post the link on the ACK facebook page.
I noticed in the patch that z.0 z.1 z.2 variable bits could be set. So, if i put set r.1 to 1 and later ask if r.1 = 1 then
would this be the case? If so then I have an endless source of variables to use, I could use only one variable for the words of power. r.0 could be the first and r.1 could be second, and so on.
I need the macro to know if a word of power is known by the player or not and presently i am using b2 through z2.
But if you can store values inside the variable's bits then this is excellent news.
Yes ACK macros can make use of bitwise operations on variables. But it is up to you to keep track of what you are using the various bits for. Keep an organized list of which variables you will be using for bitwise operations and what each bit will mean in your game. And if you are using the megapatch be sure to not use any of those used already by the megapatch.[/code]

Admiral Ackguh

Post by Admiral Ackguh »

Nice idea. So like a single multi-macro that could be called like a function that does different things depending on the variable passed to it.

You could simulate this effect with the existing system. Make your macro with all the smaller macros in it each separated by stop lines so they can only execute via goto statements.
I use multi-function macros as much as possible, grouped by related tasks. For example: macro 15 could be math functions and random numbers; macro 16 could be item-related functions; macro 17 could be functions called from dialogues.

It also helps to set aside certain variables to use as parameters, e.g.:
  • I - calling macro number
    J - return line number
    K - sub-function number
    L - input parameter
    M - result
A sample macro (#27) would look like this:

Code: Select all

01&#58; IF K > 0 THEN 4
02&#58; SET M = RND&#40;20&#41;
03&#58; MACRO I
04&#58; IF K > 1 THEN 8
05&#58; SET M = HPMAX - RND&#40;5&#41;
06&#58; IF M < L THEN
07&#58; SET M = 1
08&#58; MACRO I
09&#58; STOP
And would be called like this, from macro 56:

Code: Select all

01&#58; IF J = 0 THEN 3
02&#58; GOTO J
...
11&#58; SET I = 56      &#123;this macro&#125;
12&#58; SET J = 15      &#123;line after call&#125;
13&#58; SET K = 0
14&#58; MACRO 27
15&#58; SET J = 0

Post Reply