Castle Paradox Forum Index Castle Paradox

 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
 Gamelist   Review List   Song List   All Journals   Site Stats   Search Gamelist   IRC Chat Room

Suggestions?
Goto page Previous  1, 2, 3 ... 8, 9, 10, 11  Next
 
Post new topic   Reply to topic    Castle Paradox Forum Index -> The Arcade
View previous topic :: View next topic  
Author Message
chronoboy
Into the past with a splash




Joined: 04 Jun 2010
Posts: 162
Location: Canada

PostPosted: Fri Jun 04, 2010 8:40 am    Post subject: Update to the backdrop system Reply with quote

I am not sure if anybody else has suggested this update to the backdrop system, but here it goes:

Currently the backdrop system uses the rather outdated BMP format for backdrops, and the backdrop system has not been updated for over 10 years now. Some new features have been added, but nothing that would get developers all excited for.

Here is my idea and what could be done if this idea was to be used. Add the ability to use PNG images for backdrop images. the PNG format is free of patents and is widely available in SDL and freebasic. As PNGs support alpha transparency, new plotscript effects could be created to make RPGs more up to speed with the SNES console RPGs. Here are some examples of what some developers could do with this new feature:

Shrink the overall size of their RPG files, as PNGs are much smaller in size. Use alpha transparency to compose backdrops over tilemaps for really neat effects. Add the ability in custom to create new transitions, for enemy encounters and doors. This could be either a plotscript the developer chooses as the transition or a preset one built into game.exe.

Other neat effects that could be done are Parallax effects using a transparent PNG as either a map overlay or a map underlay. This could add the ability for really cool weather effects and magic effects for boss encounters, and other special effects during the game. A really neat idea for a boss would be a boss that has the ability to grow really large when in rage. On the tile map, one would make the boss NPC disappear then compose this transparent PNG onto the tile map displaying this large boss in full detail before the battle begins.

Using this ability would also make it much more ideal for creating custom battle scripts, as now many backdrops can be composed into one on screen and displayed to the player. In plotscripting, there should be a way to hide/display individual backdrops on the screen and layer them accordingly. In SDL this is very simple, and would imagine in freebasic it would be the roughly the same. Compose many transparent surfaces on the screen to display them all like one large image. Think how the GIMP/Photoshop does layers with images you draw/import. Even being able to compose any image onto the screen would be an asset, like enemies and hero normally used for battles. I'm surprised plotscripting has yet to add the ability to compose these graphics on the screen.

Also, is there work being done to convert the current battle system into pure plotscripting? If this can be done, then one can easily set the "instead-of-battle" script to any custom plotscript and there would be no need for battle scripting. plotscript is already very powerful, why not just enable the ability to draw enemies, heros, life, and wait bars using simply plotscripting? If these were added, I would definately help out in converting the current battle system into pure plotscript for others to use.
_________________
Current project: Chronoboy Adventures

Website: http://www.chronoboy.com/
Back to top
View user's profile Send private message Visit poster's website
Bob the Hamster
OHRRPGCE Developer




Joined: 22 Feb 2003
Posts: 2526
Location: Hamster Republic (Southern California Enclave)

PostPosted: Fri Jun 04, 2010 9:05 am    Post subject: Re: Update to the backdrop system Reply with quote

There are three separate issues here:

1) backdrop import format.
2) backdrop storage format.
3) backdrop display capabilities.

The only currently supported import format is BMP. Supporting import of PNG would be great, but it would only be an import convenience.

The current backdrop storage format inside the RPG file is a format called MXS. It is an 8-bit uncompressed format with some awkward byte-ordering. Replacing it with some other format might be nice, but is not as important as...

The current display capabilities do not allow alpha transparency. Even if both the import format and the internal storage format were converted to PNG, that would not automatically give us the ability to display alpha-transparent PNG files. Our graphics backends would have to be upgraded to support alpha transparency, and our in-memory sprite format would have to be upgraded to store alpha-transparency data

chronoboy wrote:
... Even being able to compose any image onto the screen would be an asset, like enemies and hero normally used for battles. I'm surprised plotscripting has yet to add the ability to compose these graphics on the screen.


This is already possible. Check out slices

I do plan on adding a BackdropSlice which will allow you to freely position backdrops just like you can now with sprites. And I will make it so you can choose a transparent color in backdrops, although this is obviously not the same as the full translucency that you are asking for.

chronoboy wrote:
Also, is there work being done to convert the current battle system into pure plotscripting? If this can be done, then one can easily set the "instead-of-battle" script to any custom plotscript and there would be no need for battle scripting. plotscript is already very powerful, why not just enable the ability to draw enemies, heros, life, and wait bars using simply plotscripting? If these were added, I would definately help out in converting the current battle system into pure plotscript for others to use.


You can do that already with slices.

We also have a plan for eventually converting the existing battle system to use slices, and to optionally allow scripts to run during battle.

See: plan for implementing battlescripting
Back to top
View user's profile Send private message Send e-mail Visit poster's website
chronoboy
Into the past with a splash




Joined: 04 Jun 2010
Posts: 162
Location: Canada

PostPosted: Fri Jun 04, 2010 1:39 pm    Post subject: Reply with quote

Thank you for your quick response James. I will look further into slices.

Also, in the map data section, would it be possible to add a special script for door transition effects? This will enable creating plotscripts to control door transition effects without needing to tie it to each door. It would pass the door number to the plotscript and allow the developer to script the effects and change the maps. This will also allow the developer to do other interesting things depending on which variables are set, or even which party members are active. This will also avoid having a map full of NPCs which in reality should not be used for doors.

Also, have you had a chance to play and modify an old DOS game called Ultima VII? If you have exult and the game files, it shows some very interesting development mechanics which could be used to enhance OHR. Such as proximity "eggs", an "egg" is much like an invisible NPC with the "step-on" activate flag set, except it activates when the player is within a specific amount of tiles near or away from this "egg". This would also work with NPCs too. This type of activation would eliminate the need for a circle of invisible "step-on" NPCs to trap the players movement near a game event.

I have a few demo games with some interesting game mechanics done using plotscripting I will put up soon.
_________________
Current project: Chronoboy Adventures

Website: http://www.chronoboy.com/
Back to top
View user's profile Send private message Visit poster's website
Bob the Hamster
OHRRPGCE Developer




Joined: 22 Feb 2003
Posts: 2526
Location: Hamster Republic (Southern California Enclave)

PostPosted: Fri Jun 04, 2010 3:31 pm    Post subject: Reply with quote

chronoboy wrote:
Also, in the map data section, would it be possible to add a special script for door transition effects? This will enable creating plotscripts to control door transition effects without needing to tie it to each door. It would pass the door number to the plotscript and allow the developer to script the effects and change the maps. This will also allow the developer to do other interesting things depending on which variables are set, or even which party members are active. This will also avoid having a map full of NPCs which in reality should not be used for doors.


Yeah, an "instead-of-door" trigger would be useful.

chronoboy wrote:
Also, have you had a chance to play and modify an old DOS game called Ultima VII? If you have exult and the game files, it shows some very interesting development mechanics which could be used to enhance OHR. Such as proximity "eggs", an "egg" is much like an invisible NPC with the "step-on" activate flag set, except it activates when the player is within a specific amount of tiles near or away from this "egg". This would also work with NPCs too. This type of activation would eliminate the need for a circle of invisible "step-on" NPCs to trap the players movement near a game event.


Interesting. Do you have a link to this? I would be interested in checking it out.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Nepenthe




Joined: 27 Sep 2004
Posts: 132

PostPosted: Fri Jun 04, 2010 6:40 pm    Post subject: Reply with quote

chronoboy wrote:
...an "egg" is much like an invisible NPC with the "step-on" activate flag set, except it activates when the player is within a specific amount of tiles near or away from this "egg".


I almost suggested a step-on slice type (or a way to assign a script to run when the hero comes within the bounds of a slice) once. It would be really useful for things like proximity-sensitive ambient sound effects, etc. In the end I decided to just script it manually. Haven't gotten around writing the actual scripts yet though...
Back to top
View user's profile Send private message Visit poster's website AIM Address
chronoboy
Into the past with a splash




Joined: 04 Jun 2010
Posts: 162
Location: Canada

PostPosted: Thu Jun 17, 2010 5:38 pm    Post subject: Reply with quote

James Paige wrote:
Interesting. Do you have a link to this? I would be interested in checking it out.


Sorry for such a late reply, the Exult engine which was built to run Ultima VII out of the confines of DOS is multi-platform and open source. You may be-able to get some ideas from their engine, as back in 1997, this was one of my most favorite American RPGs. You can locate the data files needed to play on retro sites. The original company that made it, was bought by EA a few years later, and later developed what became Ultima Online, which you might be familiar with. Exult engine project: http://exult.sf.net/

Exult engine is licensed the same as OHR, GPL. It has many advanced engine mechanics, and map drawing engine. The game was incredibly detailed for it's day. Complete with weather effects(triggered by a weather egg), NPC job system(you walk into a bakery, you see an NPC literally baking goods that he about to sell, each step from flour, to dough, to oven is completely performed), the same for tailors and other various jobs.

Another engine to note that is open source with GPL, it also has some interesting mechanics, very large scripting engine(in fact everything in the engine is scriptable). The demo game fully displays NPC job scripting and the path finder system. IRE Engine: http://ire.sf.net/

As these above engines are licensed under GPL as is OHR, I am quite sure using code examples(obviously converted to FreeBASIC) wouldn't be a problem as long as it is noted where the code is from. However, the ideas used in these engines alone may also bring you ideas on what you can add to enhance the current OHR. Both of these engines are from remake projects from the Ultima series(6 and 7), which I would recommend playing, if you engine a really good retro computer RPG experience.

NPCs in the exult engine noted above and in the original game are very smart, and sometimes very funny to watch. An interesting example, is the game has working windows and doors. If the weather is about to change from sunny to rainy, the NPCs will note in a caption above their head, "Looks like rain", and will stop their current action and close the doors and windows in their home. The player could also "play" with this and annoy the NPCs, as such, after the NPC closes the window, the player can devilishly re-open them, causing the NPC to perform the action again.

Both engines work along the terms of "each game object is owned by an entity", the entity can either be the player, an NPC, or not owned. This works along side with the in-game law system, which if the player is seen taking an item not belonging to them, will trigger an event. Either the NPC will fend for it, or simply alert the town guard.

I know OHR will most definitely never have such features, although through plotscripting some of them are definitely doable. They may not be desirable, as in most console RPGs, the player can take anything from NPC houses without going to jail... However, I am very tempted on a designing a karma system using plotscripts and making chests and items in NPC homes that look tempting to take. At times in the game would effect how much an NPC would trust the player, changing the overall game experience.

Hopefully some ideas from this can be passed on to OHR, as Ultima is technically a retro RPG. :p
_________________
Current project: Chronoboy Adventures

Website: http://www.chronoboy.com/
Back to top
View user's profile Send private message Visit poster's website
TMC
On the Verge of Insanity




Joined: 05 Apr 2003
Posts: 3240
Location: Matakana

PostPosted: Sun Jun 20, 2010 4:08 am    Post subject: Reply with quote

The Ultima games are a big inspiration to me, but I've sadly played far fewer of them than I should have. Perpetual to-play list. Thanks for voicing requests which I think users should be requesting but for some reason don't! :P

chronoboy wrote:
Such as proximity "eggs", an "egg" is much like an invisible NPC with the "step-on" activate flag set, except it activates when the player is within a specific amount of tiles near or away from this "egg".


Lots more NPC options planned for the near future, including "activate when player within X tiles". So you're also suggesting "activate when player more than X tiles away"?

chronoboy wrote:
Also, in the map data section, would it be possible to add a special script for door transition effects?


There are ideas for this here: 'Plan for script multitasking#Script Triggers': feedback very welcome.

chronoboy wrote:
Complete with weather effects(triggered by a weather egg)


This sounds completely different from proximity-triggered egg you mentioned before. Would this just be the equivalent of the randomly triggering a script from a map-autorun loop?

chronoboy wrote:
As these above engines are licensed under GPL as is OHR, I am quite sure using code examples


I don't see how gameplay code could be borrowed from other engines; other than editing tools, and low level stuff like graphics or sound code it sounds hopeless to me. (For example, I'm interested in taking the OPL emulation from MAME in order to play BAM files more faithfully.)

chronoboy wrote:
NPCs in the exult engine noted above and in the original game are very smart, and sometimes very funny to watch.


This sort of thing is what script multitasking is for. Some OHR games have these kind of NPC behaviours already, but it's very difficult, and we want to make it as easy as possible (suggestions for doing so extremely welcome!). For example one thing we need is NPC path finding, and I'd like to be able to edit NPC paths in the map editor instead of using long chains of walk NPC commands.

chronoboy wrote:
Both engines work along the terms of "each game object is owned by an entity", the entity can either be the player, an NPC, or not owned.


You should be able to attach data (ie "extra data") to items, and items should be able to exist outside of the player's inventory (that is, in script variables). As for a built in feature allowing you to place items on the map (instead of placing NPCs or slices) ... well, right now that sounds like a feature with low marginal value.

chronoboy wrote:
I know OHR will most definitely never have such features, although through plotscripting some of them are definitely doable.


The goal is to make them ALL doable and easy using plotscripting, and through upgrades to items, NPCs, maps, etc.

chronoboy wrote:
If these were added, I would definately help out in converting the current battle system into pure plotscript for others to use.


I have a vague idea of converting parts of the battle system (eg. damage calculation) to customisable scripts, but there are pitfalls (how will you ever fix a bug or add a new feature?). Still, it would be cool to outsource the battle system to the users :P
_________________
"It is so great it is insanely great."
Back to top
View user's profile Send private message Send e-mail
Sh4d0ws




Joined: 06 Nov 2009
Posts: 39

PostPosted: Fri Jun 25, 2010 12:40 pm    Post subject: Reply with quote

A "Set animation offset by x ticks" feature would be pretty great, for chaining together long animations with layers and multiple tilesets.[/i]
Back to top
View user's profile Send private message Send e-mail
TMC
On the Verge of Insanity




Joined: 05 Apr 2003
Posts: 3240
Location: Matakana

PostPosted: Sat Jun 26, 2010 12:51 am    Post subject: Reply with quote

Are you aware of set tile animation offset? It works on tiles, not ticks, but may do what you want.
_________________
"It is so great it is insanely great."
Back to top
View user's profile Send private message Send e-mail
arpgme




Joined: 16 Oct 2006
Posts: 20

PostPosted: Wed Sep 01, 2010 11:54 pm    Post subject: Reply with quote

OHRRPGCE would be better if it had a simple way to do strings.

Why not allow text to be written in the NPC area instead of traveling all the way to text box and then going back to NPC to choose which text to use.

This would make game creating way faster.
Back to top
View user's profile Send private message
Bagne
ALL YOUR NUDIBRANCH ARE BELONG TO GASTROPODA




Joined: 19 Feb 2003
Posts: 518
Location: Halifax

PostPosted: Thu Sep 02, 2010 4:22 am    Post subject: Reply with quote

The Mad Cacti wrote:
one thing we need is NPC path finding

Know what would be killer?
Of course you do:
If you could store NPC paths.

So ... use an invisible NPC to calculate a path, and use the path for when moving the Boulderbea— ... um ... when moving slice sprites around.

Killer diller.
_________________
Working on rain and cloud formation
Back to top
View user's profile Send private message
Bob the Hamster
OHRRPGCE Developer




Joined: 22 Feb 2003
Posts: 2526
Location: Hamster Republic (Southern California Enclave)

PostPosted: Thu Sep 02, 2010 8:37 am    Post subject: Reply with quote

Some future goals:

One is that you will be able to attach a slice directly to an NPC. that will make it supper easy to move Boulderbeast in synchronization with an NPC, without needing to manually update his position to match the NPC in every tick using a script.

Another is the nifty new "Zones" feature that TMC is working on for maps. Map zones will be usable for many things. They allow you to mark certain tiles on the map as being part of zones, and then you can assign special meaning to zones.

Another is that there will be a new NPC movement type that causes the NPC to follow the edge of the wall. If you combine this with a Zone that the NPC is only allowed to walk in, you will be able to make free-form NPC paths on a map without any invisible NPCs.

arpgme wrote:

Why not allow text to be written in the NPC area instead of traveling all the way to text box and then going back to NPC to choose which text to use.

This would make game creating way faster.


That would be great. I do hope to add the ability to jump to the textbox editor directly from the NPC editor.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Bagne
ALL YOUR NUDIBRANCH ARE BELONG TO GASTROPODA




Joined: 19 Feb 2003
Posts: 518
Location: Halifax

PostPosted: Thu Sep 02, 2010 12:07 pm    Post subject: Reply with quote

Zones!
That's the coolest idea since slices!

Did this idea simply crop up, or are there game engines that are known to use this kind of feature?
_________________
Working on rain and cloud formation
Back to top
View user's profile Send private message
Bob the Hamster
OHRRPGCE Developer




Joined: 22 Feb 2003
Posts: 2526
Location: Hamster Republic (Southern California Enclave)

PostPosted: Thu Sep 02, 2010 12:11 pm    Post subject: Reply with quote

Bagne wrote:
Zones!
That's the coolest idea since slices!

Did this idea simply crop up, or are there game engines that are known to use this kind of feature?


I know, isn't it cool? It was TMC's idea, and I am not sure what inspired him.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Pepsi Ranger
Reality TV Host




Joined: 05 Feb 2003
Posts: 493
Location: South Florida

PostPosted: Thu Sep 02, 2010 3:51 pm    Post subject: Reply with quote

I think he was inspired by the unreadable plotscripting mess that I use for triggering local ambient sounds and other "zone specific" things in Powerstick Man XE. He would have to confirm this, of course, but I remember him asking me in IRC one evening how often I use these plotted zones, and if a built-in system would be simpler. I told him a built-in system would be simpler. I think he went to work on it later that night, or at least started planning it.

Again, I could be wrong, but I think a certain horse-teethed, sunglass-wearing superhero and the gigantor plotscript code he exploits may be partly to blame for this. Either that, or the timing of the conversation was uncanny.
_________________
Progress Report:

The Adventures of Powerstick Man: Extended Edition

Currently Updating: General sweep of the game world and dialogue boxes. Adding extended maps.

Tightfloss Maiden

Currently Updating: Chapter 2
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    Castle Paradox Forum Index -> The Arcade All times are GMT - 8 Hours
Goto page Previous  1, 2, 3 ... 8, 9, 10, 11  Next
Page 9 of 11

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group