Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Clarvalon

#1
Figured it was about time I started a thread about the general state and progress of my engine, XAGE.  It's been quietly in development for a long time now - much too long really - though a lot of ground has been covered in the last 18 months inparticular.  It's approaching a point where it may actually stop being vapourware and become a thing people can get their hands on.

Established general-purpose engines like Unity have proven C#'s suitability for certain types of games, and as a language it shares much in common already with AGS Script.  The aim of XAGE is to find a niche somewhere inbetween, using a lot of similar paradigms AGS does for creating adventure games (including the same script API), whilst also allowing developers to script and test and profile their game using the latest version of the cross-platform .NET Core framework within Visual Studio.  Somewhere there's a venn diagram of people with those two interests and hopefully the intersection isn't a picture with just my face on it.

As a recent test case, I ported AGS game Last & Furious over to XAGE.  This was a reasonably challenging port, with 21 modules of varying degrees of complexity, but this could be converted mostly automatically once I'd implemented all the necessary missing engine functionality.  I wrote a little about it here:  http://clarvalon.blogspot.com/2019/08/last-furious.html - hopefully this showcases the current state of the engine.

#2
I'm hoping to launch XAGE this year, hopefully before my daughter's 10th birthday as that would represent a decade of vapourware.

Here are some ideas I'm mulling over: gamedev subreddit

Feel free to add your 2p either on reddit or here.  Given that XAGE supports converting AGS projects I thought it may be of some interest.
#3
Back in 2010 I ported Ben Chandler's AGS game Awakener to XAGE.  In 2014 I've ported it a second time, to prove and showcase some new enhancements and the new direction for the engine.  The details of this have been blogged and demoed in a short youtube video.   


I picked up Blackwell games for android last week and they work really well.  The improved portability of AGS somewhat makes an original goal of mine redundant, though focus has now shifted onto XAGE's pure C# scripting and Visual Studio integration.

If anyone has the time to try the above out I'd appreciate any feedback or bug reports.
#4
Hi,

I was wondering whether there exists a full list of properties and functions (including parameters) available within AGS.  I'm not able to find anything on the site (search on the forums seems to be broken at the moment) and there doesn't seem to be anything like this on the wiki.  The AGS Editor help file is a great resource and does seem to cover everything, though I'm having to manually cut and paste each item which is rather time consuming.

e.g. a list similar to below would be fantastic:

Properties
int Character.x;
int Character.y
int Character.z
...

Functions:
Character.ChangeRoom(int room_number, optional int x, optional int y)
Character.ChangeRoomAutoPosition(int room_number, optional int newPosition)
Character.ChangeView(int view)
...

Thanks,
Dan
#5
I'm having a spot of bother wrapping my head around resolution vs screen co-ordinates in AGS.  I can't seem to find anything conclusive on the matter, so this is what I've been able to cobble together from a variety of sources:

  • Games with resolutions of 320*200 and 320*240 use the same for internal screen coordinates.
  • 640*400 games use screen coordinates of 320*200 (x2).
  • 640*480 games use screen coordinates of 320*240 (x2).
  • 800*600 games use screen coordinates of 400*300 (x2).
  • 1024*768 games use screen coordinates of ...  ?
  • In any of the above cases, if general setting 'Use low-resolution co-ordinates in script' is set to FALSE, then the native resolution is used.

Is this correct?  And if so, what might 1024*768 use?  And is there anything else I should be mindful of?  Any help appreciated.

Thanks,
Dan
#6
Right then.  About five months ago, Ben sent me the source code from his then latest game, Awakener.  I've since been using it as a test case for my AGS to XAGE conversion tool.

Consequently, Awakener is now playable online in your web browser:
   http://www.clarvalon.com/XAGE/games/Awakener/

It has also been released as a Facebook application:
   http://apps.facebook.com/awakener

(plus it runs just fine on the Xbox360, though there are no plans to release to Xbox Live).

I've taken the liberty of pre-empting a handful of questions:


---
How does it work?

Magic. 

For a more detailed answer, see the following demonstration video:
   http://www.youtube.com/watch?v=80sdyaJl_Ko

Will my AGS game convert?

Maybe.  It depends on how complex the scripting is.  Theoretically any game that uses the same (or a subset) of the functionality Awakener does should be up and running within minutes.  In practice, however, it's more likely that there'll be missing functionality that is not yet correctly mapped to XAGE.  There is still a long way to go.

When will XAGE v0.5 be out?

I had originally hoped to release it alongside this version of Awakener, but I've cut a few corners and the Editor inparticular is not nearly as robust as I'd like it to be.  It will most likely be released in a month or two when I'm satisfied it is stable.
---


A big thank you obviously goes to Ben, for sharing his source code and tolerating my incessant  emails.  Likewise thanks to everyone else who has sent me their source code over the last six months - every one has helped XAGE mature, and will continue to do so.

Cheers,
Dan
#7
I've got an armful of AGS-related questions that I've not yet been able to find conclusive  answers to, so it seems best to post them here (apologies if I've overlooked anything in the documentation or forums).

1)  Views:  What exactly is the reason for having views?  I understand that certain loops in views denote specific animations (directional walking, talking etc) however I'm still struggling to understand why views are important when AGS Editor already provides another mechanism for organising the animation loops (subfolders).  Is this a legacy design decision?

2)  Animation speeds:  This is documented already but the timings don't quite seem to be translating properly.  A 40 fps AGS game has 40 ticks, so a character with an animation delay of 2 and a frame delay of 3 would spend 5 ticks displaying the given frame (0.125 seconds)?  And so if the animation call is 'cCharacter.Animate(5, 3, eOnce, eBlock)' then the animation delay is overridden with a 3, meaning the same frame is on the screen for 6 ticks? (0.15 seconds).

3)  Room Events:  There are three room events surrounding room entry.  Is this the correct order and circumstances in which these events fire?  I'm not sure if the player's first entry also fires the standard room after fade-in event.

   Player's first entry:   Enters Room before fade-in -> First time enters room
   Any following entry:    Enters Room before fade-in -> Enters Room after fade-in

Any help appreciated.
#8
[Edit: 18th Jan 2018] The AGS Export Plugin has now been open sourced:

What better way to spend a Saturday night than writing my very first AGS Editor plugin?  This plugin is based upon the RoomXML exporter code by Denzil Quixode.

NOTE:  The second stage of the conversion requires XAGE Editor v0.5, which has not yet been released to the public (so it's pretty useless to most people at the moment).

Usage:  This plugin prepares AGS game files in a way that is suitable for conversion to the Xna Adventure Game Engine (XAGE), in order to play them on the Xbox360 or via a web browser.  It is designed to be as straightforward as possible, so the instructions should hopefully be self-explanatory.  After copying AGS.Plugin.ExportToXAGE.dll to the AGS Editor executable directory, a new option should appear on the toolbar, 'Export -> Prepare game for XAGE':





If selected, the plugin will then launch XAGE Editor and automatically begin the second stage of the conversion process. 



Download:  ExportToXage v0.4.zip

Changelog:
  v0.5 - Released Source Code (22nd Dec 2012).
  v0.4 - FIXED - Rooms with no description & View subfolder warning.
  v0.3 - FIXED - Uses relative rather than absolute paths.
  v0.2 - ADDED - Extracts Hotspots, Regions, WalkAreas, WalkBehinds as PNG.
  v0.1 - Initial version.  Automates extraction of Room XML, sprites and room background images.
#9
Further to these threads, I thought I'd provide an update regarding the AGS to XAGE conversion.  There's now a short video of Demo Quest running on the Xbox360 on the XAGE development blog.

Most of the game logic is not yet ported over but, as the video hopefully demonstrates, the basics are pretty much in place.  I'm hoping to get alpha v0.4 released in the next month or so.  Here's a comparison of Demo Quest in AGS and XAGE:



The recent threads about adventure gaming on consoles and cursor control via gamepad's have been quite enlightening, so I'd be interested in hearing anyone's thoughts or suggestions; previous feedback has played a large part in shaping XAGE's direction.

Ta!
#10
Advanced Technical Forum / Export Room to XML?
Wed 15/04/2009 14:49:01
I've searched the forums and not been able to find anything to suggest this is possible, but thought it worth asking anyway - is there any way of using the AGS Editor to export a room (*.crm) to XML?  I notice that the main game content in the .agf file is XML, but the rooms are not.

The reason being is that I'm writing a tool to convert AGS projects to XAGE, to help reduce the amount of effort required in porting a completed AGS game to the Xbox360 (a quick video of Demo Quest 3-1 running in XAGE can be found: here).  Without the room information the automated conversion can only go so far.
#11
Hi,

I hope this post is allowed - apologies if I've misread the forum rules.

This isn't about AGS per se, but my own personal project.  Basically I'm currently developing an XNA adventure game engine that utilises a gui for all script creation rather than code.  At the moment I'm working towards completing the engine and getting a game published on the the Xbox Live Community Games channel.

More information (including video using Monkey Island 2 graphics) can be found here:
http://clarvalon.blogspot.com/

Basically I'm wondering if there'd be any interest in the eventual release of the engine for peope to create their own games (in the mould of SCUMM games - monkey island, day of the tentacle etc.), as this will change my approach to the way certain elements are developed.

Cheers,
Clarvalon
SMF spam blocked by CleanTalk