Adventure Game Studio | Forums

Community => Adventure Related Talk & Chat => Topic started by: Calin Leafshade on Mon 08/07/2013 09:55:41

Title: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Mon 08/07/2013 09:55:41
Hello :)

As some of you may have seen, my last MAGS game was released using a different engine to AGS. I hope to continue its development further on and off over the next few months.

The engine aims to be a modern alternative to AGS which provides better support for high resolution games and which is hardware accelerated at all stages. The engine will use Lua scripting and use Love2D for its rendering and sound support. Because Adore will be coded in Lua at a very fundamental level all stages of the game will be overridable by the user either globally or for individual objects. Don't like the pathfinding? Feel free to write your own. Dislike the way Say commands are rendered? Just override it and the engine will continue as normal, calling Say commands just like the built in version.

Wait, it's coded in Lua? Won't that be really slow?

It's true that Lua is slower than raw c++ but AGS itself doesnt really do that much calculation under the hood. The most complex calculation is probably the pathfinder which usually has 2 or 3 nodes to consider and is over in a flash. The bottlenecks in AGS's speed are the CPU based rendering (dynamicsprites and so forth) which Adore does not have and it's unoptimized scripting language. My tests indicate that Lua is about an order of magnitude faster than AGS script in most cases. I've yet to find a situation in which AGS beats Lua for speed. (Cue monkey_05_06, stage left)

Why are you posting? Get on with it!

Adore will probably adhere to alot of AGS's conventions such as Characters, Rooms, Objects and so on but it does not have to. We have an opportunity here to reconsider the adventure game paradigm and create a tool that can facilitate that without being tied to an old code base. So I want to ask what *fundamental* things about AGS that you would change. How should objects and rooms work? How should the hierarchy be arranged? What annoys you about AGS? What things do you think AGS should be able to do that it does not?

Here are a few that I've already thought about and taken on board.

- The option for polygonal regions and walkable areas. High resolution games don't play well with bitmap masks and they are slower and use more memory.
- (optional) Sub pixel accuracy for all objects for smoother animations.
- A rethink of the "blocking" paradigm that AGS has. Multiple threads? Coroutines?
- Bone based animation built in.
- Pixel shaders.

Why are you posting on the AGS Forums about a competing engine? Are you mental?

I doubt Adore could replace AGS in a lot of ways. Firstly the barrier to entry is likely to be higher since AGS is very user friendly and Adore would be more modern and so require more programming expertise. Secondly I don't think Adore could cope with traditional, pixel art games as well as AGS can. AGS has that sierra/lucas arts feel down to a tee. With Adore I'm hoping to allow the creation of newer, more modern adventure games which is where AGS has traditionally struggled.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: CaptainD on Mon 08/07/2013 10:06:44
Calin - not really feature requests, but a couple of fundamental questions about this engine:
- would it have cross-platform support?
- would buying a licence be required to release commercial games built using Adore?
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Sslaxx on Mon 08/07/2013 10:18:35
Quote from: CaptainD on Mon 08/07/2013 10:06:44
- would it have cross-platform support?
When Calin says Lua, he means LOVE 2D (http://love2d.org/). So it should (nominally) be cross-platform as LOVE 2D is.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Mon 08/07/2013 10:19:05
It would be open sourced under the LGPL or something similar. A license that allows you to basically do what you like providing you give attribution where necessary and inform users of any changes. Having said that I would allow donations to be given and I think it would be fair to expect successful commercial projects to give me a kick back but no commercial license would exist.

In terms of cross platform support, it would be supported anywhere that Love2D and Lua are. Currently that is Windows, Linux, Mac and Android (preliminarily). There is also experimental HTML5 support for Love but I don't know how far along that is.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: CaptainD on Mon 08/07/2013 10:41:47
Thanks for the answers.  All the best with this project!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: miguel on Mon 08/07/2013 10:57:59
Calin, I understand that Adore will have a set of functions specific to game-making, right?

If so, what I find time consuming with AGS script is looking (example here) for a function like
Code (AGS) Select
SetSkipSpeech. Although it's obvious, I keep forgetting all this specific functions and it's not easy to find it in the manual.
I always get by using the forum "search" and that's okay, I end up reading and learning more than I was looking for. But I think that all code related to Speech (in this case, of course) should be extended from typing...Speech.

Can you give us a hint about your way of organizing functions? Please.

I'm very excited about your project, good luck with this.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Crimson Wizard on Mon 08/07/2013 10:59:35
Quote from: miguel on Mon 08/07/2013 10:57:59
If so, what I find time consuming with AGS script is looking (example here) for a function like
Code (AGS) Select
SetSkipSpeech. Although it's obvious, I keep forgetting all this specific functions and it's not easy to find it in the manual.
I always get by using the forum "search" and that's okay, I end up reading and learning more than I was looking for. But I think that all code related to Speech (in this case, of course) should be extended from typing...Speech.

Ahem...
http://www.adventuregamestudio.co.uk/forums/index.php?topic=47966.msg636459390#msg636459390
(roll)
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Mon 08/07/2013 11:17:40
Quote from: miguel on Mon 08/07/2013 10:57:59
Can you give us a hint about your way of organizing functions? Please.

All Adore's stuff would be under a single namespace (adore). So it would look like this:

Code (lua) Select

adore.wait(1.5) -- wait for 1.5 seconds. (Adore will not be frame based but time based)

adore.currentRoom.hotspots[1]:interact()
adore.rooms[1].hotspots[1]:interact() -- all hotspots and stuff will be global and all rooms will be editable at runtime.
adore.rooms[1].hotspots.hDoor -- hotspots can be accessed by name as well as index

--This seems longwinded but remember than in lua we can do this:

function myFunc()
    local hs = adore.rooms["myRoom"].hotspots.hDoor -- shorten the name for this function so its quicker to type and quicker to access.
    hs:interact()
    hs.name = "unlocked door"
end
   


My current plan is to make Adore something between a tool like AGS and a framework like love2d or xna or something.

The "tool", let's call it the Editor, would allow you to enter your data much like the AGS editor does. But when you "compile" your game, all it does it spit out Lua code which is then run by Love. This means no compiling necessary and it should be very fast. Adore will maintain no "sprite cache" like AGS does but just use pngs from a folder which can be updated at will and the changes will be reflected next time you run the game.

so for instance, you might use the Editor to create a character called Grundislav. The Editor would then spit out something like this:

Code (lua) Select

local c = adore.character.new()
c.name = "Grundislav"
c.animations =
    {
        walking =
            {
                left = adore.animation.new("gfx/grundislavLeft.png", 25,50) -- loads a sprite sheet where each sprite in the sheet is 25x50 pixels. Adore will do the rest. No views to worry about.
                right = adore.animation.new("gfx/grundislavRight.png", 25,50)
            }
    }
c.walkingSpeed = 5
-- and so on
return c


Then the engine can just pick up this code and run with it. No compilation, no headaches.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: miguel on Mon 08/07/2013 11:32:14
I didn't mean to be rude Crimson, you're work with AGS is something fantastic.
I hope to see AGS being more organized and I do read and keep up with what you come up, although because it's very technical I refrain myself from commenting.

This next paragraphs are my own opinion:
But since this is a different thread I want to express my opinion that I think that it's easier to get excited with a new engine (created from someone that also loves AGS) than with a "new" version of AGS. If you would be re-creating AGS from scratch, now that would be exciting. But I have the impression that the task you're handling is way to troublesome to accomplish and without major benefits regarding other modern engines.
When will AGS have support for different platforms and better graphic capabilities? How many versions before that? For what I've been reading you are trying to make CJ's code more readable and of course to improve it. That's fantastic, but I think that the latest AGS built is more than enough to make commercial retro-like adventure games. It is stable and has a huge community behind.
A AGS 4 would be what I'd dream of, without all that compatibility issues. A Software adapted to the modern days with the flexibility of AGS and its incredible supporters.
Calin is offering something like that right now and that's refreshing!

--------------------------------------------------------------------------------------------------------------------------------------------
Calin, this looks amazing! I'm giggling like a school girl although I'm a fat guy with a beard!
I don't really want to insult anybody's feeling but Adore sounds way too cool to miss it.
I'll be keeping my eyes on this one, Calin. Great stuff.

Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Crimson Wizard on Mon 08/07/2013 11:43:25
Quote from: miguel on Mon 08/07/2013 11:32:14
I didn't mean to be rude Crimson, you're work with AGS is something fantastic.
Err, I never thought you are rude, just noting we are fixing the language a little.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: on Mon 08/07/2013 12:10:47
A licence compatible with AGS would be awesome!
Good luck with it!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Radiant on Mon 08/07/2013 17:26:08
One thing that annoys me about AGS is unclear error messages. If the engine throws an exception and exits, you don't necessarily get a correct line number, and often critical data is missing (for example, instead of "a parameter is out of range" I would like to know which parameter).

And I don't like the way AGS handles certain commands at the end of the current script run (e.g. NewRoom / RunDialog / CallRoomScript calls). There is a very annoying error message that says that two of these are run in the same script cycle, which is apparently not allowed, but it won't tell you which ones or where they were called.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Mon 08/07/2013 17:38:33
re: errors and exceptions

The unclear error messages is just a matter of proper error trapping which will come with time. Lua does have exception handling OOTB but there are ways we can augment it.

Code (lua) Select

try(function()
    local x = nil
    x.pie = "yum" -- Oops! attempt to index nil!
end,
function (err) -- catch function
    adore.display(err)
end)


I'll probably override the error system in Lua because, usually, the errors passed are just strings which are awkward to interpret. So i'll pass objects instead with more info.

re: concurrency of commands.

This is something I've already considered a little. I think AGS runs certain things after the function has finished because there are certain game state changes (room changes especially) which would cause problems.
Adore will not have this problem because the game state is far more static. The only things that will get loaded and unloaded are assets like room backgrounds. So yea, Adore will allow things like room changes and dialogs to happen in the middle of a function. Indeed, Adore has a coroutine systems that allows you to run your own, non-blocking function and then return to it later where you left of.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Babar on Mon 08/07/2013 18:15:31
I think someone (Crimson?) did an interesting topic about the "Data Structure" of an adventure game as a sort of prelude to the discussion of adjusting AGS after it became open. Can't find it now :(.
But as far as comparing to AGS, perhaps having inventory items tieable to rooms as well (so you could have people dumping all their inventory in one room or something), and maybe having objects be tieable to multiple rooms? Or maybe just combine the two. :D
And addable and changeable (at runtime) properties for all such entities (characters, objects, hotspots, rooms, etc.), but I suppose that'll come about anyhow considering how you're saying everything will be overrideable or changeable LUA objects.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Crimson Wizard on Mon 08/07/2013 18:22:46
Quote from: Babar on Mon 08/07/2013 18:15:31
I think someone (Crimson?) did an interesting topic about the "Data Structure" of an adventure game as a sort of prelude to the discussion of adjusting AGS after it became open. Can't find it now :(.
But as far as comparing to AGS, perhaps having inventory items tieable to rooms as well (so you could have people dumping all their inventory in one room or something), and maybe having objects be tieable to multiple rooms? Or maybe just combine the two. :D

That was RickJ:
http://www.adventuregamestudio.co.uk/forums/index.php?topic=45165.msg607273#msg607273
http://img28.imageshack.us/img28/9957/entityconcept.pdf
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Grundislav on Mon 08/07/2013 18:26:29
Quote from: Calin Leafshade on Mon 08/07/2013 11:17:40
so for instance, you might use the Editor to create a character called Grundislav.

I am not a character...I AM A HUUUUMAAAN!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Galen on Mon 08/07/2013 21:05:06
Quote from: Grundislav on Mon 08/07/2013 18:26:29
I am not a character...I AM A HUUUUMAAAN!

Well... there's only one way to be sure, what does this say?:
(http://www.youhosting.com/en/captcha/index/transparent/1)
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Scavenger on Mon 08/07/2013 21:39:51
Quote from: Calin Leafshade on Mon 08/07/2013 11:17:40
The "tool", let's call it the Editor, would allow you to enter your data much like the AGS editor does. But when you "compile" your game, all it does it spit out Lua code which is then run by Love. This means no compiling necessary and it should be very fast. Adore will maintain no "sprite cache" like AGS does but just use pngs from a folder which can be updated at will and the changes will be reflected next time you run the game.

Will there be some way to pack those folders into a resource file or something? While loading PNGs from folders is all well and good and easy, it does make a huge mess of the directory, looks horribly amateurish, and allows people to just pick up the resources and walk off with them, or easily edit them. And, well, I just don't like huge directories of resource files.

Will there be support for actual vector graphics? I expect now that we're talking about high resolution graphics, they may as well be /resolution independent/.  I would love to see vector graphics being given the same ease of use as any raster format. And vectors are much easier to generate, nowadays!

I am quite intrigued at this project. I am interested to see more.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Mon 08/07/2013 21:47:41
Quote from: Scavenger on Mon 08/07/2013 21:39:51
Will there be some way to pack those folders into a resource file or something? While loading PNGs from folders is all well and good and easy, it does make a huge mess of the directory, looks horribly amateurish, and allows people to just pick up the resources and walk off with them, or easily edit them. And, well, I just don't like huge directories of resource files.

The data files will be attached to the EXE file much like AGS when you do a "release" compile but most of the time it'll just load the files from the directory tree. Of course the assets can still be extracted with relative ease. I'm not going to bother with encryption or anything.

Quote from: Scavenger on Mon 08/07/2013 21:39:51
Will there be support for actual vector graphics? I expect now that we're talking about high resolution graphics, they may as well be /resolution independent/.  I would love to see vector graphics being given the same ease of use as any raster format. And vectors are much easier to generate, nowadays!

There is support to draw arbitrary polygons and, with pixel shaders, you could implement some kind of vector rendering but i've no plans to implement vector graphics, no. The closest thing to vectors I plan to implement is tweened, bone based animation.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Sslaxx on Mon 08/07/2013 21:52:45
Quote from: Calin Leafshade on Mon 08/07/2013 21:47:41
Quote from: Scavenger on Mon 08/07/2013 21:39:51
Will there be some way to pack those folders into a resource file or something? While loading PNGs from folders is all well and good and easy, it does make a huge mess of the directory, looks horribly amateurish, and allows people to just pick up the resources and walk off with them, or easily edit them. And, well, I just don't like huge directories of resource files.

The data files will be attached to the EXE file much like AGS when you do a "release" compile but most of the time it'll just load the files from the directory tree. Of course the assets can still be extracted with relative ease. I'm not going to bother with encryption or anything.
Planning on using .love files attached to the EXE then?
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Mon 08/07/2013 22:04:53
Am I to take it that you know something about love? Tell me, what is love?

But yes, that is my initial plan.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Armageddon on Mon 08/07/2013 22:13:31
I'd make it like SCUMM, an interpreter and you just make room scripts and the basic gameplay in separate files.

Awesome that you're doing this though Calin. Will if be free for commercial use? Also if it has the locked mouse cursor and characters when scaling up with nearest neighbor like AGS does then I will certainly be the first to use it. I'm a little concerned about the polygon paths for lower resolution games. Also changing the resolution and whether it's windowed in real time, enabling and disabling the nearest neighbor filter in real time as well would be cool. When I scaled up my Love2D game by x2 with nearest neighbor the objects floated between the pixels, probably to give a smoother movement but it really didn't look right at all.

But making the engine open and allowing the GUI and other things to be hard coded instead of sheets on top of an engine sounds awesome. Just using script files and not an editor would be my choice, but I'm sure if you want many people to use the engine then it should have an editor.

Also cross platform. ;-D This will probably take a long time to make though I'm guessing?
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Sslaxx on Mon 08/07/2013 22:20:05
Quote from: Calin Leafshade on Mon 08/07/2013 22:04:53
Am I to take it that you know something about love? Tell me, what is love?

But yes, that is my initial plan.
What is love? Baby don't hurt me, don't hurt me, no more.

So long as we can have an option for a separate .love file, that's good!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Mon 08/07/2013 22:23:35
Quote from: Armageddon on Mon 08/07/2013 22:13:31
I'd make it like SCUMM, an interpreter and you just make room scripts and the basic gameplay in separate files.

No, I think AGS has that side of things covered. I want to make something more flexible and modern.

Quote from: Armageddon on Mon 08/07/2013 22:13:31
Awesome that you're doing this though Calin. Will if be free for commercial use?

Thanks, yes.

Quote from: Armageddon on Mon 08/07/2013 22:13:31
Also if it has the locked mouse cursor and characters when scaling up with nearest neighbor like AGS does then I will certainly be the first to use it.

It will have both.

Quote from: Armageddon on Mon 08/07/2013 22:13:31
I'm a little concerned about the polygon paths for lower resolution games.

Modern, high res adventures are my aim. I think AGS has mostly got low res covered but I will consider bitmap masks if necessary.

Quote from: Armageddon on Mon 08/07/2013 22:13:31
Also changing the resolution and whether it's windowed in real time, enabling and disabling the nearest neighbor filter in real time as well would be cool.

Already done.

Quote from: Armageddon on Mon 08/07/2013 22:13:31
When I scaled up my Love2D game by x2 with nearest neighbor the objects floated between the pixels, probably to give a smoother movement but it really didn't look right at all.

Thats because you scaled up the coordinate system. You need to make a render target and scale that after drawing to it to keep the pixels native. Adore already does this.

Quote from: Armageddon on Mon 08/07/2013 22:13:31
But making the ending open and allowing the GUI and other things to be hard coded instead of sheets on top of an engine sounds awesome. Just using script files and not an editor would be my choice, but I'm sure if you want many people to use the engine then it should have an editor.

Due to the design of the engine you are perfectly able to write your entire game without ever opening the editor. All you need to do is code the characters and stuff manually.

Quote from: Armageddon on Mon 08/07/2013 22:13:31
Also cross platform. ;-D This will probably take a long time to make though I'm guessing?

Love is already cross platform and Adore is already cross platform by design.

Well, the MAGS game I released took two weeks, including building the skeleton engine that it runs on. The editor will take some time though.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Armageddon on Mon 08/07/2013 22:48:39
Oh  didn't know that wasn't made with AGS, I just played it. Very impressive game. Fullscreen just stretches it instead of actually changing the resolution of the game. I guess the only way around that is to sue polygons and texture filtering. It froze the character after I looked at the yucca plant and I had to restart. Probably something with being at the edge of the walk path and turning to look at it. The only thing I didn't like was the taking away control while walking to an object, something like the GotThere module would make playing much less restrictive feeling.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Secret Fawful on Mon 08/07/2013 22:55:52
I gave White Wedding a playthrough, and found it seamless and well-made. The interfaces had neat functionality. I'm definitely interested to see what you do with this. Just know that one day, I'm probably going to try to push the engine to its breaking point. SOMEHOW. Maybe I'll use it to make a nude racing game.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: dactylopus on Mon 08/07/2013 23:16:04
Quote from: Secret Fawful on Mon 08/07/2013 22:55:52
I gave White Wedding a playthrough, and found it seamless and well-made. The interfaces had neat functionality. I'm definitely interested to see what you do with this. Just know that one day, I'm probably going to try to push the engine to its breaking point. SOMEHOW. Maybe I'll use it to make a nude racing game.
Please do.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Tue 09/07/2013 13:21:47
Quote from: Armageddon on Mon 08/07/2013 22:48:39
Oh  didn't know that wasn't made with AGS, I just played it. Very impressive game. Fullscreen just stretches it instead of actually changing the resolution of the game. I guess the only way around that is to sue polygons and texture filtering.

The current version of the engine resamples the game as the native screen resolution wherever possible and unless overrided by the user.

Quote from: Armageddon on Mon 08/07/2013 22:48:39
It froze the character after I looked at the yucca plant and I had to restart. Probably something with being at the edge of the walk path and turning to look at it.

This is a known bug and there's something wrong with the pathfinding algorithm but i can;t figure out what. I will get there eventually.

Quote from: Armageddon on Mon 08/07/2013 22:48:39
The only thing I didn't like was the taking away control while walking to an object, something like the GotThere module would make playing much less restrictive feeling.

That was an aesthetic choice in this case really. Adore does allow you to do this though:

Code (lua) Select

--walk function is defined like this:
function character:walk(x,y,block,callback)

--this allows you to do something like this:

player:walk(200,400,false, function()
    player:say("I arrived without being interrupted!")
end)


Basically whats happening here is that you are passing a function to the walk command which is run when the walk in completed if it's not interrupted.
Now, because Adore has a very flexible idea of what "blocking" means, this means that these actions can be independent of what the player is doing. Two characters can talk at the same time providing they're doing so in different coroutines. If the same character tries to talk in different coroutines then one will just block until the other has finished. Admittedly this could lead to some very odd behaviour if you didn't plan your game properly but there we are.

[/code]
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Baron on Wed 10/07/2013 05:33:32
It's the second coming!  The prophecy was true!  Chris has returned to us, in the form of some sort of uncrowned cat....  SINNERS REPENT!!!!!
As for features....

COTEMPORANEITY: Talking at the same time, walking at the same time (e.g. both characters pace away from each other and turn and shoot at the exact same moment).   
VECTOR GRAPHICS: Really a modern engine needs to be able to handle vector graphics.  It's such a pain to export them as pngs and import them into AGS, thereby vastly inflating the file size.  Also imposing raster masks on vector backgrounds....[shudder].  Compatibility with Flash would be ideal for me.
TRANSFORMATIONS: Vectors scale and can be rotated flawlessly.  As a developer it is a pain to work around rotations especially (usually rotating it in the drawing program and reimporting it as yet another png...)
GUIS: Why don't GUIs in AGS behave like everything else? (e.g. button transparency, animation....)
EMBEDDED OBJECTS: In its simplest form, embedding an object in another object, with its own unique functionality.  In a more complex usage, a character could be a collection of parts that will respond uniquely to interactions, thereby facilitating everything from hit detection to changing clothes.
DYNAMIC ROOMS: Why just five backgrounds?  Why?  Being able to have more backgrounds per room, or even better being able to dynamically change light levels on the background (e.g. night time) would hugely speed things up.
EFFECTS: Common Adventure scenarios like fog (fading linked to y values, even backgrounds) or water (calculating z plane and obscuring the portion of the character beneath it) would be sweet.

That's all I can think of off the bat.  Documentation will be critical to attract new users (i.e. me, for one), since it will require a lot of steep learning.  Good luck with this project!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Phemar on Wed 10/07/2013 09:18:11
This look very exciting!

Quote from: Baron on Wed 10/07/2013 05:33:32COTEMPORANEITY: Talking at the same time, walking at the same time (e.g. both characters pace away from each other and turn and shoot at the exact same moment).   

I believe this is already available, with coroutines and such as Calin has said.

Quote from: Baron on Wed 10/07/2013 05:33:32DYNAMIC ROOMS: Why just five backgrounds?  Why?  Being able to have more backgrounds per room, or even better being able to dynamically change light levels on the background (e.g. night time) would hugely speed things up.

I believe Crimson has just done this with the alpha version of 3.4. Check the Editor development forum.

I think a great feature would be to have characters that are made up of different parts. Like in the SCUMM engine, most characters were made up of their heads and their bodies, allowing an easy way to have the character walk AND talk at the same time.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Armageddon on Wed 10/07/2013 09:24:03
Yeah a follow view exactly thing like AGS has would be nice. But since the engine would be so open things like that could very easily be added.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Billbis on Wed 10/07/2013 09:52:10
Here's my few silly ideas, which may or may not inspire you:
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: miguel on Wed 10/07/2013 10:50:21
Tween, Paralax, Vectors and Particule effects...Native.
Please.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Sslaxx on Wed 10/07/2013 11:04:35
Quote from: miguel on Wed 10/07/2013 10:50:21
Tween, Paralax, Vectors and Particule effects...Native.
Please.
LOVE has a built-in particle system: http://love2d.org/wiki/ParticleSystem
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Wed 10/07/2013 15:17:05
Quote from: Sslaxx on Wed 10/07/2013 11:04:35
LOVE has a built-in particle system: http://love2d.org/wiki/ParticleSystem

It's also rubbish. I would probably wrap it in something more complex.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Ryan Timothy B on Wed 10/07/2013 16:46:06
Quote from: Calin Leafshade on Wed 10/07/2013 15:17:05
I would probably wrap it in something more complex.
You should always wrap your tool of Love.

Quote from: Baron on Wed 10/07/2013 05:33:32
DYNAMIC ROOMS: Why just five backgrounds?  Why?  Being able to have more backgrounds per room, or even better being able to dynamically change light levels on the background (e.g. night time) would hugely speed things up.
I disagree with having animating background in the first place. But if I were to make an adventure game system, I'd have background images imported as sprites - that way anything can be a background image - even a dynamic sprite.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Crimson Wizard on Wed 10/07/2013 17:33:19
Quote from: Ryan Timothy on Wed 10/07/2013 16:46:06
Quote from: Baron on Wed 10/07/2013 05:33:32
DYNAMIC ROOMS: Why just five backgrounds?  Why?  Being able to have more backgrounds per room, or even better being able to dynamically change light levels on the background (e.g. night time) would hugely speed things up.
I disagree with having animating background in the first place. But if I were to make an adventure game system, I'd have background images imported as sprites - that way anything can be a background image - even a dynamic sprite.

Or rather Room should have View same as Character or Object :).
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Ryan Timothy B on Wed 10/07/2013 18:55:55
That too. What I meant though, in my opinion, was that an animating background is generally always overkill. Where you could have separate objects (layers) animating in smaller sections instead. Of course though, some need an entire background to animate.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Knox on Thu 11/07/2013 02:20:40
Adore...are you a Smashing Pumpkins fan? :)

Maybe a dumb question but could an AGS project be "transfered" to Adore without too much hassle?
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Jaffles on Thu 11/07/2013 03:23:03
Heh, I'm still working on mastering AGS, but this is a cool idea! Multiplatform support is a big thumbs up from me! I live in the Mac-OS-phere it seems, so nobody I know personally can easily play my AGS games  :(

Good luck with this!  :-D
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: dbuske on Thu 11/07/2013 14:04:21
Will Adore have the same way of scripting. Meaning the connection between the editor and scripting.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Thu 11/07/2013 18:02:12
Quote from: General_Knox on Thu 11/07/2013 02:20:40
Adore...are you a Smashing Pumpkins fan? :)

Adore is a play on words. Firstly it uses Love for its rendering and it stands for Adventure Rendering Engine.
(But i am also a Pumpkins fan and that is my favourite pumpkins album :))

Quote from: General_Knox on Thu 11/07/2013 02:20:40
Maybe a dumb question but could an AGS project be "transfered" to Adore without too much hassle?

Short answer is no.

Long answer is maybe partially. One could export rooms and characters and stuff easily enough but the scripting API and stuff will probably be fundamentally different and so conversion would be difficult.

Quote from: dbuske on Thu 11/07/2013 14:04:21
Will Adore have the same way of scripting. Meaning the connection between the editor and scripting.

The editor and the scripts will be less connected than AGS because events and stuff dont need to be tied to hotspots, they are simply overridden from the base class.

Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Sslaxx on Thu 11/07/2013 18:17:24
Quote from: Calin Leafshade on Thu 11/07/2013 18:02:12
Quote from: dbuske on Thu 11/07/2013 14:04:21
Will Adore have the same way of scripting. Meaning the connection between the editor and scripting.

The editor and the scripts will be less connected than AGS because events and stuff dont need to be tied to hotspots, they are simply overridden from the base class.
Maybe you could exchange notes with Clarvalon about it?
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Knox on Fri 12/07/2013 01:09:46
Quote from: Calin Leafshade on Thu 11/07/2013 18:02:12
(But i am also a Pumpkins fan and that is my favourite pumpkins album :))

Aaaaaaaaaand the night mare rides on! hehe  8-)

Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: monkey0506 on Fri 12/07/2013 03:15:32
(http://images1.wikia.nocookie.net/__cb20130104014741/mlp/images/a/a7/Night_Mare_Moon_am_I_not_royal_enough_for_you_S1E1.png)

The Night Mare you say?
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Secret Fawful on Fri 12/07/2013 05:44:56
No, damn it, Monkey! NO! It's an abomination! Child's poison! My Little Pony, more like my little Glue goldmine. Ship em to the factory, I say!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: monkey0506 on Fri 12/07/2013 07:09:23
I'll be the first to use Calin's modern engine. I'll use it to make a MLP:FiM MMORPG/FPS/RTS action adventure side-scrolling platformer, because I Love and Adore ponies. Also, the first puzzle will be to make love to a door because you can't find a key. It will be 3D at 4K resolution, because anything less than that wouldn't be modern. It will be released exclusively on Android, iOS, PS4, Xbox One, Wii U, HTML 5, PS Vita, Nintendo 3DS, Windows 8, Windows Phone, Linux, Mac OS, Ouya, and Sega Dreamcast. I will not support any non-modern systems.

Edit: Forgot to mention, it will be coded entirely in Lua, the only modern scripting language, which means the game will be available for sale the day after the first public release of Adore. That will give me time to include all the necessary bonus content and implement the day one DLC features.

Cloppers will enjoy the broad range of intricately intertwined love interests for the protagonist, including mare-on-mare, anthro, and even EG. No stallion love interests though, because that would cross some serious lines.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Secret Fawful on Fri 12/07/2013 07:52:18
Monkey, it sounds to me like you're making fun of Calin's unexpected use of the Lua programming language in his brand-new engine that he built personally.
I don't think that's very nice or funny at all. This is nothing to laugh about. Lua is a fabulous language, highly endorsed in these quotes by famed designers.

Lua is good. I can't get sexually excited unless I'm coding in Lua. - Calin Leafshade
Well, I personally agree with this concept and it's a concept that I can get behind, and generally I can agree with it mostly. - Dave Gilbert
Blaurgh what!? Ow my head. And why am I covered in beans!? - Mark Lovegrove
Can you eat it? No? Then get it away from me. - Tim Schafer


I don't appreciate your terrible attempt at trolling. Not only is Lua the perfect choice for this, but it's absolutely amazing, and cancels out many of AGS's nagging problems. I guess you could say that it's-

(http://abload.de/img/oneofmypersonalfavori9rs7s.gif)

Edit: Honestly, I doubt a person like you can never know the MAGIC of FRIENDSHIP when you hound people this way.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: monkey0506 on Fri 12/07/2013 08:03:57
I couldn't troll if I tried. I'm a brony through and through, the magic of my friendship will always shine true. When my totally modern game is an instant multimillion dollar success, you will all realize that bronies never say die.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Armageddon on Fri 12/07/2013 08:13:33
Okay that's enough. Let's all keep thanking Calin for doing what we all wanted to do.

And if this has low res support and it isn't too hard to strip out particles and shaders then I certainly will be one of the first to use it. :D
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Secret Fawful on Fri 12/07/2013 08:16:25
That's silly, Monkey. My Little Pony could never be a multi-million dollar success.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: miguel on Fri 12/07/2013 11:00:51
Let's have a Engine Battle! Calin VS Monkey!
Monkey, start designing your engine right now! We could have something like ADORE VS ADORE_ONLY_GOD!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: dbuske on Tue 24/09/2013 20:04:00
Modern computers have gigs of memory. Use it in Adore.  Have a good caching scheme.
Pre-loading rooms and characters.
Make the scripting easier. Use ags script, but update. Allow the scripting to be
done through the editor.
Allow characters to be made just like ags does it. No 3D mode.
Don't be sucked into going the 3d way of doing things.
Ags's charm is the easy startup learning.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: selmiak on Tue 24/09/2013 20:41:32
Quote from: dbuske on Tue 24/09/2013 20:04:00
Make the scripting easier. Use ags script, but update.

...and get rid of that slow and overcomplicated LUA plz, kthxbye :=
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Armageddon on Tue 24/09/2013 23:48:10
This isn't AGS dbuske, a lot of what you described it pretty outdated. And why would Calin go with 3D??? Making characters in AGS is one of the worst things I've done, importing all those frames that are stored as numbers, making his settings match perfectly with all the other characters before. Lua is a pretty great language and much more powerful than AGS script. I'm guess this will be almost entirely script based to start with and not much of an editor. Please update us Calin.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Grim on Sat 28/09/2013 02:24:05
I'd learn LUA for this.

Sounds great, and I totally support all points Baron has mentioned earlier- rotation being one of my main pains in the butt since you could do so much with it...

Eagerly awaiting more news on this!;)

EDIT: And for the record, I don't think there's anything funny about trying to make a modern adventure game engine. As much as I love AGS, I find its limitations very frustrating and often wish it was... well, more modern;) Also, another Pumpkins' fan here!;)
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: TheBitPriest on Sat 28/09/2013 16:00:14
This is a great idea.   I wanted to play with AGS so much that I even switched from Linux to do it!  That was a huge loss. . . :P 

AGS is great, but it's a bit frustrating at first for those who are used to more robust debuggers, automated testing, and automated resource compilation apart from the GUI.  I haven't been around long enough to "feel qualified" to put a Best Practices page together, but AGS could really use one.  Many of the features mentioned in this thread are available with AGS, as some are quick to point out, but you have to mine the forums to find them once you realize the problem with the "standard way" of implementing the games (I'm thinking about non-blocking speech, "got there" style walking, BASS interface, and so on). 

It's worth it.  AGS rocks, and so does this community. :=  But one day . . .   
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Sat 28/09/2013 17:41:11
Hello!

A lot is happening on the Adore front in a rather circumspect way.

I can't reveal too much but the technologies in Adore are currently being adapted into an engine that will power a game by the team that gave us one of AGS's most successful releases of the past few years.

After the project is officially announced I will go into more detail on the specifics of the engine.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Sslaxx on Sat 28/09/2013 18:00:33
Quote from: Calin Leafshade on Sat 28/09/2013 17:41:11
Hello!

A lot is happening on the Adore front in a rather circumspect way.

I can't reveal too much but the technologies in Adore are currently being adapted into an engine that will power a game by the team that gave us one of AGS's most successful releases of the past few years.

After the project is officially announced I will go into more detail on the specifics of the engine.

Is the ADORE going to be still made available at all?
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Calin Leafshade on Sat 28/09/2013 18:04:58
Yea, almost certainly.

It will probably just take a bit longer.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: monkey0506 on Sat 28/09/2013 20:58:04
Quote from: TheBitPriest on Sat 28/09/2013 16:00:14AGS is great, but it's a bit frustrating at first for those who are used to more robust...

Funny, I felt exactly the same way when I picked up Eclipse with the ADT plugin (for Android development) a month ago. Then again, Java's not a real language either...just like a bad version of C#.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: qptain Nemo on Sun 29/09/2013 03:18:06
Quote from: Calin Leafshade on Mon 08/07/2013 10:19:05
It would be open sourced under the LGPL or something similar. A license that allows you to basically do what you like providing you give attribution where necessary and inform users of any changes. Having said that I would allow donations to be given and I think it would be fair to expect successful commercial projects to give me a kick back but no commercial license would exist.
I just thought, if you still intend to open source Adore, I can recommend going with MPL 2.0 (http://www.mozilla.org/MPL/2.0/). It really comes across to me as a more sensible and fair version of LGPL without all the "you put our two programs too close to each other so now they're actually one program" silliness.

Good luck with the project!
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Ryan Timothy B on Sun 29/09/2013 07:46:20
Quote from: Calin Leafshade on Sat 28/09/2013 17:41:11
Technologies in Adore are currently being adapted into an engine that will power a game by the team that gave us one of AGS's most successful releases of the past few years.
Journey Down

(Or I'm terribly wrong and it's BT:DT, but I somehow doubt that)
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Armageddon on Sun 29/09/2013 08:10:53
Aw, we have to wait on Dave Gilbert to finish his next game now. :(
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Anian on Sun 29/09/2013 12:16:46
Quote from: Armageddon on Sun 29/09/2013 08:10:53
Aw, we have to wait on Dave Gilbert to finish his next game now. :(
They showed some screenshots and gameplay of the new Blackwell game, so I'm guessing it won't be that long of a wait...unless they're redoing everything in the engine.
Title: Re: Adore - A New Adventure Game Engine - Feature suggestions.
Post by: Armageddon on Sun 29/09/2013 12:21:29
*Glares at Mods and Screen 7*