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 - Calin Leafshade

#41
Critics' Lounge / RPG Characters
Tue 28/08/2012 04:50:46
I've been trying to pixel some RPG characters for a few days and this is what i've come up with:



Any tips on how to improve?

Also, I'd be interested if anyone has a way to make them less animey while maintaining some degree of character. I have tried and I always come back to that facial structure.
#42
Ok, so imagine the following scenario:

You want to ask a question of the user and blocking the returning script without actually blocking the engine. Now, I know this can probably be done with coroutines in Lua but im not sure exactly how to structure my code.

Can anyone help?

EDIT: Ok this seems to work, I seem to have solved my own problem but its a little messy i think

Code: lua

	co = coroutine.create(function()
		logmsg("run")
		QuestionScreen:Ask(co, "Yes", "No") -- this pops up a GUI asking a question
		coroutine.yield() -- this waits until the GUI input function gets its answer but does not block the engine.
		if QuestionScreen.Selected == 1 then
			PlayerAvatar:Say("Lol")
		else
			PlayerAvatar:Say("Not Lol")
		end
	end)
	coroutine.resume(co)
#43
Critics' Lounge / RPG Tileset
Wed 22/08/2012 03:05:54
I have been working on this for a few days:

[imgzoom]http://i.imgur.com/9cpbz.png[/imgzoom]

What do you think? I think some of my colours are not quite harmonising properly.

(Some of the tile were done by Alan V. Drake, mostly the indoor ones)
#44
Is there a way to see if AGS is running under the debugger? I know that you can check if its in debug mode but thats not the same thing.
#45
Hello AGS people.

Here is the source code to alot of my games, both released and not. Bear in mind that these were never intended to be seen by the general public so the source probably contains examples of terrible programming and very rude comments. You have been warned.

They are all released under the Creative Commons Attribution license which basically means you can do what you like providing to give credit to 304 and myself.

The files are here: http://www.sanctuary-interactive.com/~steve/toshare/

DistortionMapping.zip 4.3M   
This is some distortion mapping stuff I did a while ago for a game. It never got made.

EBTsrc.zip 22M   
The source for The Ever Beginning Tale

EUsrc.zip 360M   
Eternally Us. This is a massive file because *all* the source files are included. This includes voice over files, sprites, old backgrounds, everything.

HopeSrc.zip 3.1M   
This is Hope Actually ignore these. They are very unfinished and out of date.. I'll try and find the proper version.

Pixelformer.zip 2.6M   
This is a platforming engine using AGS rooms and regions. You can draw the platforms in using the regions. It's unfinished and a bit buggy but works fairly well.
#46
General Discussion / The scariest monster
Tue 07/08/2012 13:07:12
What do you think the scariest monster is from horror films? I'm mostly talking in a visual sense but the character too.

I propose that, visually, the things from fright night are pretty bad.



any others you can think of?
#47
The Rumpus Room / I WANNA KNOW WHAT LOVE IS!
Sun 05/08/2012 21:18:00
I WANT YOU TO SHOW ME!
#48
Dualnames: To be merged with topic www.adventuregamestudio.co.uk/yabb/index.php?topic=46493

I think we should consider generalising it and making an interface similar to the the FontRenderer one. I don't think it would be *that* hard. AGS provides serialisation methods and stuff in the plugin API so it would just be a matter of taking what has been learnt from AGS-lua and applying it more generally. Most of the building blocks are already in place.
#49
Morning gents,

Can someone give me a good reason why, if making a tile based game (in AGS), I should make a tile based engine to do so rather than just using a static image file for the background.

Historically this was done to save memory but i can't see that that is a good argument here since in order to get AGS to draw the tiles quickly the best way to do it is to cache the map to an object and move the object around to simulate camera movement. So since the whole map is cached anyway we dont save any memory.

Any thoughts?
#50
General Discussion / Has anyone seen Martyrs?
Tue 10/07/2012 20:10:17
Ok so there's this film, Martyrs. I will briefly sum up the plot for those who have not seen it and dont particularly want to. So SPOILERS AHEAD!

Essentially this cult get women and torture them to such extremes that they enter a trance like state and see "the other world" (presumably the afterlife).
This has never been done successfully with the 'Martyr' communicating what they saw. However they finally manage to do it with this woman and she whispers her revelation to the cult leader.
The cult leader then shoots herself.

SO my question is, what do you think the martyr told her? I know that the whole point of the film is that we don't know but as an exercise in brainstorming i'd like to hear your ideas.

Here's the pertinent clip with a translation below:

http://www.youtube.com/watch?v=sHe2y14xAv8
#51
Morning gents,

So AGS.Native has been around for a few weeks now and I've spent a few hours going through the compiler.

I'll be honest and say i don't really understand a lot of it due to all the assembly required but I think we should make a conscious effort now to improve the scripting language.

I think we should start by adding the ability to reference custom structs and pass them as parameters. This addition would essentially make AGS capable of creating full (read useful) OOP constructs.

Does anyone have any insight on how hard this would be? AGS can already create managed objects and already has a pool for them since they can be created using plugins so it seems like there isnt that much more to do.

Any thoughts?
#52
Ok so my RasPi arrived a few days ago but now i realise that i have no idea of anything fun to do with it.

So suggest things to me. What shall I make?

(for those who dont know, http://www.raspberrypi.org/faqs )
#53
So, i made this: http://dl.dropbox.com/u/27247158/shadow.zip
(move the mouse around the character to see the effect)

Its a ray tracer that adds rim lighting to sprites when they are near a light.

However its *very* expensive.

Currently the light 'searches' for characters and draws the light as it finds them.
Surely since the lighting is *only* applied to characters I should be able to draw the effect per character without tracing a full circle around the light.
Does anyone have any insight on how to do this?

I will post some code snippets with how i did it. (messily)



Code: AGS

void Light::Draw()
{
  int i;
  while (i < Game.CharacterCount)
  {
    if (character[i].Room == player.Room)
    {
      
      ViewFrame *vf = Game.GetViewFrame(character[i].View,character[i].Loop, character[i].Frame);
      charSprites[i] = DynamicSprite.CreateFromExistingSprite(1); //reset the sprite. this will need to be more complex with actual animating sprites but thats by the by atm.
      vf.Graphic = charSprites[i].Graphic;
    }
    i++;
  }
  float u = 0.0;
  while (u < 360.0)
  {
    raycast(this.ID, u);   
    u += degStep;
  }
  ds.Release();
  
  while (i < Game.CharacterCount)
  {
    ViewFrame *vf = Game.GetViewFrame(character[i].View,character[i].Loop, character[i].Frame); 
    vf.Graphic = charSprites[i].Graphic; //set vf to sprite to remind the engine that the sprite has changed (bug?)
    i++;
  }
}


and the ray cast function

Code: AGS


void raycast(int light, float a) 
{
  int xx, yy;
  a = Maths.DegreesToRadians(a);
  float d = 0.0; // distance from light
  int str = 100; // light strength. Linear falloff, will do more believable falloff later.
  
  while (d < 100.0 && str > 0)
  {
    xx = FloatToInt(Maths.Sin(a) * d) + lights[light].X;
    yy = FloatToInt(Maths.Cos(a) * d) + lights[light].Y;
    
    if (xx < 0 || xx > 320 || yy < 0 || yy > 200) str = 0;
    else if (Character.GetAtScreenXY(xx, yy) != null)  // hit character
    {
      Character *c = Character.GetAtScreenXY(xx, yy);
      DrawingSurface *cds = charSprites[c.ID].GetDrawingSurface();
      int x = xx - (c.x - (charSprites[c.ID].Width / 2));
      int y = yy - (c.y - charSprites[c.ID].Height);
      
      int col = GetRFromColor(cds.GetPixel(x, y));
      col += str / 4;
      if (col > 255) col = 255;
      if (col < 0) col = 0;
      
      cds.DrawingColor = Game.GetColorFromRGB(col, col, col);
      cds.DrawPixel(x, y);
      cds.Release();
      str -= 50; // reduce strength from character hit to simulate rimlight
    }
    d += 1.0; // advance distance
    str --; // linear falloff
  }
  
}

#54
Advanced Technical Forum / Modal/Pausing GUI
Tue 08/05/2012 04:04:40
Anyone any ideas for easily and sensibly implementing modal GUIs?

Ideally i'd like to do this:

Code: ags

Display("Well hi there! Click Ok on the next GUI you see!");
WaitWhileWeShowGUIModally();
Display("You clicked OK! Good for you!");


This keeps it neat by keeping the code inline and not fucking with program flow.

However, GUI Buttons can't be clicked while the game is blocked so i guess i'd have to check mouse position and stuff manually in a wait loop?

Is that how you guys would do it?
#55
Come on! We havent had one of these for a while!

Ok so I was thinking about teh gays (as I do sometimes) and I wondered why we segregate men from women (toilets and locker rooms and stuff) but not homosexuals from their gender or even from each other now that i think about it.

This led me to consider other times we have segregated and why it was considered bad. Why is racial segregation different from gender segregation? What is the defining characteristic?

I am physiologically different to a woman (shut up) but I am also physiologically different to a black guy. The differences are less stark but still there.

What about transsexuals? At what point is a male to female transgender allowed to use a female bathroom? When she identifies as a woman? Or when she has the operation? If the latter then are we saying that its merely the possession of a penis? What sense does that make?

If you are going to argue that it's the physical attraction that makes it inappropriate, that doesnt seem to stack up with the facts.

Firstly, men and women tend not to mind sharing a bathroom with homosexuals (some do but most dont) but would mind sharing with the opposite sex.

Also, do you think you would mind sharing a locker room with a member of the opposite sex if they told you that they didnt find you sexually attractive in the slightest (assuming you believed them).

I'm trying to organise my thoughts on this but nothing seems to make a lot of sense when i consider it rationally.

Does anyone have any insight? Are you gay? Do you have a problem with sharing a bathroom with a homosexual or the opposite sex? If so, why? or indeed why not if you dont.
#56
Site & Forum Reports / Stack Exchange for AGS?
Fri 04/05/2012 08:57:45
Since y'all are giving the forum some polish and there seems to be some impetus behind the changes, how bout a stack exchange type system for AGS?

For specific questions a forum is not a particularly good way of doing it since it encourages divergent conversation. Also, a SE type system could give rewards to those who answer a lot of questions thus giving (weak) incentive to help others.

For those who are unsure of what Stack Exchange is take a look at http://stackoverflow.com/

Its basically a system whereby users can ask questions and get answers which they can then flag as answered. That way it allows people to easily see which questions are unresolved so they can be answered and it allows questions to be easily indexed for searching.

If there's some interest I would be happy to help with coding the backend (since the FOSS systems currently available are pretty shitty) providing there were people to assist with the visual design.
#57
Here's a very quick module that may or may not be useful to people.

It's essentially an easy to use tree structure for story nodes.

http://dl.dropbox.com/u/27247158/StoryState.scm

So in game_start you can register all your story nodes.

Code: ags

  StoryState.RegisterNode("Start", null);
  StoryState.RegisterNode("GotSword", "Start");
  StoryState.RegisterNode("GotMonkey", "Start");
  StoryState.RegisterNode("StabMonkey", "GotMonkey,GotSword");
  StoryState.RegisterNode("EnterParty", "StabMonkey");


The first parameter is the node name, the second parameter is a comma delimetered list of its parent nodes (you MUST use null for the first node, however you SHOULD be able to have multiple first nodes for different/multiple characters and things)

Then you can set the flag in game when something happens

Code: ags

  StoryState.SetFlag("GotSword", true,  false);

  // You can check a flag with:
  if (StoryState.GetFlag("GotSword")) // etc


The first param is the node you want to set, the second is the value you want to give it and the third is whether or not you want the setting to be recursive. Which means...

If you want to skip ahead to a part of your game you can set a single node and it will set all the nodes that are parents (and their parents) to the same value.

So you might have a (simple linear for our purposes, it can have multiple branches) tree like this:

Start -> Get Key -> Open Door -> Kill Monster -> Get Girl.

then you can recursively set Open Door to true and the game will assume that the previous steps have been accomplished for other purposes within your game.

The recursion should be good for about 50 levels which may not be enough for a larger game. If it becomes a problem I'll have to come up with a different way of recursion (populating a list and iterating through it probably in stead of functional recursion) but this will serve as a test to see if its actually useful.

Providing you use the system as a replacement for global variables in all cases and set room states and stuff in room load it *should* make story tracking much simpler. I say should because I havent actually tried this in a game yet and it may be more trouble than its worth but i thought i'd throw it out there anyway.

Also it might prove very useful for multiple endings and things because you can easily keep track of the progress of the tree and it progresses and easily set the game state to any point in the story with a single function call.

Let me know if any other functionality would be useful.

EDIT:

This was in response to this thread ( http://www.adventuregamestudio.co.uk/yabb/index.php?topic=44784.msg598839#msg598839 ) but ive only just got round to releasing it.
#58
General Discussion / Anyone a lawyer?
Tue 24/01/2012 17:58:33
Ok so about 12 months ago I had a leak in my bathroom. It was a small leak due to a faulty seal in one of the pipes. I live in an upstairs flat for which I own the longterm leasehold but not the freehold and some of the water managed to make its way down the plaster into the flat below.

When the guy downstairs told me about the leak, I immediately turned off the water and then isolated the problem and stopped the leak more or less immediately so I wasn't negligent in repairing the leak.

A few days ago I received a letter from the lettings agency who rent the flat downstairs. They say that they are going to bill me for the damage to the plaster.

Now, that seems like an odd thing to do. There was no negligence and it was clearly an accident. Surely it's just a matter for the insurance and I couldn't be personally liable for the damage. If my bath fell through the ceiling they wouldn't personally bill me for thousands of pounds to fix the ceiling, they would just claim on the building's insurance.

Any thoughts?
#59
General Discussion / Anyone play Blood Bowl?
Tue 27/12/2011 14:35:02
Me and some AGSers are trying to get a league together. Does anyone here play?

It's currently 50% off on steam and I *highly* recommend it. Adventure gamers may appreciate both the humour and the strategic elements.
#60
My entry for the bakesale. A cheese scone, something for the more discerning consumer who finds ThreeOhFour too sweet.

Murder On The Lady Titania

Have you ever wanted to solve a murder on a 1920s cruise ship in the mid-atlantic? Well now's your chance.

Features include:

- A game made in less time than it really should be made in
- a parser system
- a nice fadey, swishey interface courtesy of Leafshade Technologies
- some blood probably
- possibly some extras if i get time.
- graphics worse than every other bakesale game




SMF spam blocked by CleanTalk