JoeBonk's Games

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

JoeBonk's Games

Post by joebonk »

This thread is about my games that are slowly coming around.
Better to keep to one thread instead of starting a new one just to announce a new game.
Whenever I come across a big hurdle that I can't get around,
I just start a new game until the previous problem gets a work around.

My latest game is called Ultima: Abyss

Premise:
You are a simple daemon just trying to seed sin and steal babies in the night,
when suddenly some wizard or Regent of a land summons you for some menial job or another.
Can't a daemon catch a break?
Perhaps the greatest challenge of the game is getting back to the comforts of a flesh burning hell, home sweet home.

But just when you think there is peace, you are summoned to enchant a sword or retrieve a Virtue Stone.
During the time of Exodus, the wizards are at war with the self proclaimed Regent of the land Lord British.
The great island nation of Maginica is a shining example of Pride and Innovation.
And what are these serpent pillars arising out of the sea?

Yet a time traveling mad scientist has acquired the deed to Stonegate.
And needs help with his weather altering agenda called Project Harpsichord.
Learn how to program the computer Exodus.
But what about the Other 4 computers? Genesis, Leviticus, Numbers, Deuteronomy.
What planets are they found on?

There are plenty of side missions and eventual game outcomes.

Map Sorcera:
Image

On a 3D model:
Image

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

Post by joebonk »

Image
Abyss is about 50 percent done. Wondering how to do some things.

I want to have a creature spawn every time someone enters the area. Would be nice if there was a hack in which the W (wanderer spawn) won't spawn if AGGRO > 0. That way the bad guy NPC couldn't spawn more then once. A good addition to placing creatures (using the W) would be to ask the likely hood of spawning based on how many AGGROs are already present rather then the chances of it spawning in general.
To repeat spawn without W would be easier to do with a room map. Hide them under a floor tile and the macro ask (searching serpentine like) if it found the floor tile and then stop the macro. This way I could hide maybe 10 or so bad guys and each time the macro would stop when finding another floor tile to remove.

Unfortunately the map I want this for is a world map. In this case the floor tile could be a misc object, which I think can cover npcs. I could have a floor tile be an obstacle that is replaced by a normal floor tile when bumped. But I would like to recharge this if the bad npc dies. This npc is only one found in the game and can appear and disappear, and never dies unless a condition is finally met. When it dies it is only for now. What I really would like to know if there is a way to place an NPC on the map that is not bumping into an object, but can spawn say 4 spaces away. And only do so if aggro < 1. Preferably on a world map.

Another feature is an arena where you fight gladiator style. This would be forced challenge or even to earn money. So this arena would have to have all its conditions recharged when the experience is over.
Can a death macro allow for an exit from a room?
Perhaps remove everything underneath. Yet I would like to have this room used again whenever the player needs it. Maybe a tile that, once passed on, will place items on the map, readying it for the next time.

I would love an ability to spawn NPCs only if there were no AGGROs in the area.

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

Abyss

Post by joebonk »

It's coming along.
I rewrote some of the plot.
Image
At the Exodus computer

User avatar
Ice Cream Jonsey
Posts: 28879
Joined: Sat Apr 27, 2002 2:44 pm
Location: Colorado
Contact:

Post by Ice Cream Jonsey »

Looks great, joebonk. I can't wait to play it!
the dark and gritty...Ice Cream Jonsey!

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

Post by joebonk »

Thank you ICJ. Can't wait to finally finish one of these.

Here is the opening to the book that will accompany the game:

The Present State Of Affairs
By The Time Lord
To Lord Balron

Table Of Contents:

1)Introduction

2)The recounting of ages

4)...
...
...
..


Introduction:

Greetings dear friend. I write to you about some very troubling events that deserves our full attention. The future of Sosaria is in dire straights. The work we did at the side of Minox will be undone if the coming age of darkness is to emerge. The realms will collide and planets let loose from their orbits. The destruction of everything is soon upon us. Please be advised.

As of now the world teeters on the edge. I am doing the best that I can from keeping the very fabric of the spiritual and material worlds from destroying each other. It requires all of the energy I can muster at present and so must enlist the aid of agents who can travel the land and make right the wrongs that plague the either. You are my last hope.

Though the affairs of your realm deserve much of your attention, and certainly I do not wish to deprive it. Yet you have vast armies at your command. Surely you could send one of your powerful generals to address the matters I will shortly put before your sourly needed attention.

As you know my presence is among the many time lines that span the cosmos, and I have been privy to many upcoming events. But to know the future we must first recount what has come to be and recapitulate the great task we took to keep the world from shattering asunder.

Most importantly I offer my deepest condolences for the loss of our beloved Madonna, Minox, the flower of the cosmos. Surely the realms will not see another blessing among the stars. I weep with you and your world. Yet the worst is not over. Know that your very realm is in terrible danger of not ever existing. This we must address as soon as possible.

I also wish to offer my congratulations for the offspring Dorbius. Yes, I know of your love affair with the mortal women Hagatha, the witch, and the half breed daemon child she bore you. Do not let his mortal dim witted mind trouble you. I foresee great and wonderful things for the boy. Please be patient with the poor fellow for I assure you he will become a great ruler of standing among the realms.

And speaking of rulers, a tyrant has entered the world. An usurper with great powers known by many as The Beast British. Do not let the obviously prejudiced moniker fool you. He is quite capable and intelligent. Though his presence in Sosaria will let loose a series of events that will crush the fabric of time and space. He must be stopped at all cost.

As of yet I do not see a viable time line in which to execute his demise. Fate has favored him well. Therefore I implore you to send an agent to the realm of Sosaria to find the path we seek. To rescue the future from utter inhalation.

I do not wish to delay you any further on this quest, so let us now begin a recounting of the ages that have come to be. You have always been my dear friend and confidant. And I give you my blessings. If ever you need my aid, just merely ask and my hand shall be yours.

Your friend, The Time Lord.

______________________

1) The Recounting Of The Ages

In the beginning the realm was shadowed in darkness. There was no light to find the way of the journeying soul. These were hard times for the sage. And magic would not yield it's secrets to man.

But then a bright and driven wizard had forged the crystal. This wizard was Mondain. A master of control. And the crystal was the focal point of countless realms. Magic and power collided on this gem and no other in the universe could harness such control as did Mondain.

The darkness subsided. Now it was clear for all who sought the path of magic and who wanted to become a wizard. This was the dawn of the true age of enlightenment. Magic did not require the confinements of base materials, and the either flowed freely through the land of Sosaria...
__________________________

So far. It's almost done. Any day now I will do a complete run through to see if anything bonks.

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

Ultima Abyss

Post by joebonk »

Here is another screenie from Abyss. Fawn map.

Image

Which is a Venice like town. The town appeared in 2 Ultimas.
Don't have many maps left but will use the remaining up for goodies.

ishtenos
Posts: 47
Joined: Tue Feb 28, 2012 8:37 pm
Location: In your imagination

Post by ishtenos »

Looking very good, sir. Really like what you did with the UI in the "Exodus Room".
~Ishtenos
@Roaming Cactus

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 »

SEXY!
Which of you is interested in my fine wares?

Admiral Ackguh
Posts: 137
Joined: Sat Nov 03, 2012 11:26 am
Location: Canada
Contact:

Post by Admiral Ackguh »

joebonk wrote:I want to have a creature spawn every time someone enters the area....

Unfortunately the map I want this for is a world map. In this case the floor tile could be a misc object, which I think can cover npcs. I could have a floor tile be an obstacle that is replaced by a normal floor tile when bumped. But I would like to recharge this if the bad npc dies. This npc is only one found in the game and can appear and disappear, and never dies unless a condition is finally met. When it dies it is only for now. What I really would like to know if there is a way to place an NPC on the map that is not bumping into an object, but can spawn say 4 spaces away. And only do so if aggro < 1. Preferably on a world map.
1) Create a duplicate of a common terrain tile (like grass). This will be exactly the same as grass, but will have a macro triggered by passing. If your existing grass already has such a macro, you only need to add code to it. The reason for a special "macro grass", used only where needed, is that putting a macro into regular grass (or other common terrain) will make your game very slow. Keep track of the item numbers of regular and macro grass; that is your only way of telling them apart.

2) On your world map, place macro grass only where needed. That terrain will spawn your NPC. Note that your NPC will be moving and not talking, like all Summoned creatures.

3) Edit your macro grass macro, so that it runs the following code when conditions are right for NPC spawning, including if AGGRO < 1.

Code: Select all

SET F = 1
SET X = LOC&#91;X&#93;
SET Y = LOC&#91;Y&#93;
QA 34 &#91;npc creature number&#93;
QA 38
For F, use any flag variable that is normally zero. "QA 34" will summon creature after the macro ends, and this will work on a terrain passing macro. "QA 38" moves player one space away from the NPC (spawned in same location.)

4) If you want the NPC to be moved somewhere else, use the following in your step macro:

Code: Select all

IF F = 0 THEN &#91;line number after code snippet&#93;
MAPCHKD X Y Z
MAPADD 1 1 255
MAPSETD 1 1 Z
MAPTAKE X Y 255
SET F = 0
X and Y are the former location of the NPC. Use the new location in the MAPADD and MAPSETD.
Another feature is an arena where you fight gladiator style. This would be forced challenge or even to earn money. So this arena would have to have all its conditions recharged when the experience is over.
Can a death macro allow for an exit from a room?
I think so. It can also set a flag that the step macro can check, to change LOC[RG] and LOC[RM].
Perhaps remove everything underneath. Yet I would like to have this room used again whenever the player needs it. Maybe a tile that, once passed on, will place items on the map, readying it for the next time.
You could use a spawning mechanism similar to the one I mentioned for your returnable villain. Or your arena can have a hidden space where each square has a particular wandering monster, 100% chance. Use step macro to SET LOC[X] = LOC[X] to "goose" the map into spawning them, and depending on circumstances, copy the creature from the W spaces to where you need it, and delete the original.
- A:A:

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

Post by joebonk »

I appreciate the compliments.
It's very big game and some characters will see maps the other will never see.
Excellent. Thank you Admiral. NCPs can be relocated!!!
Technically on a map, a person could have a giant row of "W" wandering spawns and pick one at random, and if I understand correctly - momentarily setting loc x and y to the "W" monster we want, then having the creature moved, then having player moved back to area where we just put the monster/warrior/challenger. If I understand this correctly, and hopefully then I also hope that monsters can be moved to areas beyond the view of the 11 x 9. If not this would still work as the w can be spawned just beyond the wall of the arena and then have it moved to the visible side of the wall, then move the character again.
So happy about this thank you again.
I think there was another post about the story line being similar to the Bible. (but the post is gone now). In a way it did sound like it but very many religions also start off with the light being cast into the darkness. Also knowledge and light were symbolic of each other. Illumination or what not. But I changed the characters around since then. In fact the player then is now an NCP and a new player I am going to use these maps with instead. So I may need to rewrite the book. I have like 10 world maps and more on the way.

joebonked

update

Post by joebonked »

Hi. I crammed a lot of my projects into one really big game.
I remember Garth saying that keeping it small will get things done faster, but oh well.
It's just that having so much fun making it.
Well, here is a couple cloth map versions of some of the world maps from the game. Why cloth maps?
I don't know but I made them anyways.
Image

Image

In the game you can use moongates, travel through time, be a space pirate, and stuff

Admiral Ackguh
Posts: 137
Joined: Sat Nov 03, 2012 11:26 am
Location: Canada
Contact:

Post by Admiral Ackguh »

You actually made cloth maps?

In nay case, I have been away from both ACK and this forum for many months. I hope to see this game soon, Joe. I only wish I can say that I have made progress on my game.
- A:A:

Joebonked

Post by Joebonked »

Well um not really clothe maps. oops. lol. I took screen shots of the world maps (dosbox hotkey f-4)? and then edited it to look like an Ultima map that would come with an ultima game.
And these are rough drafts.
I think Chris H. made one for his mapping gem in Ultima4.2 but maybe it was a pixel map, I can't remember right off hand. They lack longitude and latitude lines that the final versions will have. I guess the maps will be triggered by the sextant object as C.H. game does.
For those intresed, his mapping gem object (misc.) triggered a macro that found the loc[x] loc[y] variables (where the player was on the world map) and then recalculated those numbers to those that can make a flashy symbol over a bmp picture of the world map.
SO that if you were on an island. and the x y location were 192 and 37, then all one needs to do as use math (sorry) to recalculate those figures. And after being recalculated, tell a macro to draw a flashy pixel over a bmp image of a world map. The way this works is that the game (ack) knows where you are in 2 (3) variables loc[x] and loc[y]. loc[rg] is the third and MAY not be used. x and y are two variables that know an up and down and left to right. Since these factors are known, they can be applied to an acquisition that will tell ack where to put a flashy pixel over a .BMP image (picture of a world map).
Any image also has so many pixels. From left to right and up to down. Images max size in ACK is 320x200. You math has to turn the numbers extracted from loc[x] and loc[y] into numbers the flashy pixel will appear over the .bmp image of the world map.

Also, I changed the whole story line to something different. So anything I have said previously can be ignored. If the game actually turns into something mentionable I will start a new thread about it with proper headings.

ACK is extremely useful to the complete novice and is very user friendly. But if one wanted to customize the physics of the game then macro commands can do just that. Any game from the 80s can be remade with ACK. This program has an extreme potential that is sorely underrated. The reason we need to get more games out there.

JoeBonked

Ouch!~

Post by JoeBonked »

Here are some more screenies of Abyss:
Image

Image

Image

Image

Image

JoeBonkedAgain

Another

Post by JoeBonkedAgain »

Here is a better screen of the White Castle
Image

User avatar
Jizaboz
Posts: 4811
Joined: Tue Jan 31, 2012 2:00 pm
Location: USA
Contact:

Post by Jizaboz »

Man, this is looking really cool!

Admiral Ackguh
Posts: 137
Joined: Sat Nov 03, 2012 11:26 am
Location: Canada
Contact:

Post by Admiral Ackguh »

I like the pseudo-3D terrain.
- A:A:

Joe.Bonk
Posts: 10
Joined: Sat Feb 13, 2016 7:00 pm
Location: ISS

Set Tile Later, Fight Arena Monsters

Post by Joe.Bonk »

Admiral Ackguh wrote:

Code: Select all

IF F = 0 THEN &#91;line number after code snippet&#93;
MAPCHKD X Y Z
MAPADD 1 1 255
MAPSETD 1 1 Z
MAPTAKE X Y 255
SET F = 0
This trick worked greatly for me.

Image

And did so in one run.
Additional lines will animated bmps of player walking into area and being locked behind by bars.
And BMPS will animate bars on the other side lifting to let the monster into the arena.
Also the space macro is in the area so it is replaced by a regular tile (preventing more monsters from joining the fight).
And because the space macro is a set tile later, it can be turned back into the space macro after the monster dies. (death macro)

Those who are wondering how to have two set laters with one object...
There is a great TRICK!!! :)
If the tile number and macro number are the same, it will work still :) :) :)
And can be traded with other items that are set later.
How?
Using the same trick for moving monsters also works with setting portals and properties that, like the monsters, are also hidden.

I should have waited to release the game before revealing the trick.
But then maybe I was merely reinventing the wheel.

So a regular space that is set tile later, can be turned into a space macro and keeps the tile it was already set to. Cool huh?

And many objects that require activity, after being accomplished turn into regular obstacles that are set tile later.

For portals you could of course use the setport command. But this can be used when adding new portals on a world map, out of order. No need to use setportal command.
In this case I use any portal as long as it is hidden as the source data for the new portal to be set to the same destination.
Coming soon: Ultima Abyss

Joe.Bonk
Posts: 10
Joined: Sat Feb 13, 2016 7:00 pm
Location: ISS

Fight Arena

Post by Joe.Bonk »

Here is a simulation of the fight arena:

[youtube][/youtube]

I was going to change the macro calling space object with that of a non-calling macro space object. But then I realized it didn't need to.
There is a copy of the macro calling space object hidden in the top left of the screen.
Just right of the bars is where this space macro actually gets used but is set to disappear
as soon as the play steps on it so that it won't keep adding bad guys to the arena.
The bad guy is at the top right corner hiding under a sword.
The reason to hide the bad guys not visible is because if they are not then game will slow down seeking to find a way for them to attack the player.
So putting an object on top of them will stop that game from doing that.
The macro triggered by the space first takes the sword off the bad guy.
Then copies the bad guy, placing a clone inside the arena and then covers the original hiding bad guy again with the same sword.
The bad guy has a death macro that will restore the arena to start all over.
It will copy the top left space macro, (just as the bad guy was copied)
Then adds a fresh macro calling space tile again to the right of the bars.
Then transmits the copied data to it.
Since the object is also a set tile later, which tile it is also gets copied and transferred to the new object.

The trick to having two instances of set later is to make both cases the same number.
The same macro number and the same tile number. In this case 49.
Coming soon: Ultima Abyss

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 »

Impressive stuff Joe. Its been a thrill watching you go from ACK initiate to ACK wizard!
Which of you is interested in my fine wares?

Post Reply