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 - fovmester

#1
I just added a new function to my global script, and an import of this function to the global header file. This resulted in all my rooms needing to be rebuilt, of course. During the course of the rebuilding, AGS crashed during the build of room 21. I could open the game again and tried to compile again (in retrospect that might have been a bad idea). Now the compile continued, skipping room 21 and continuing to room 33 before the same happened again. I restarted and compiled like this a couple of times until all the rooms had compiled (or been skipped). Now when I tried to edit room the rooms that were skipped I got the following exception:

Code: ags

Error: Load_room: old room format. Please upgrade the room.
Version: AGS 3.1.2.82


AGS.Types.AGSEditorException: Load_room: old room format. Please upgrade the room.
   at ThrowManagedException(SByte* message)
   at load_room_file(SByte* )
   at load_crm_file(UnloadedRoom roomToLoad)
   at AGS.Native.NativeMethods.LoadRoomFile(UnloadedRoom roomToLoad)
   at AGS.Editor.Components.RoomsComponent.LoadNewRoomIntoMemory(UnloadedRoom newRoom, CompileMessages errors)
   at AGS.Editor.Components.RoomsComponent.LoadDifferentRoom(UnloadedRoom newRoom)
   at AGS.Editor.Components.RoomsComponent.LoadRoom(String controlID)
   at AGS.Editor.Components.RoomsComponent.CommandClick(String controlID)
   at AGS.Editor.ProjectTree.ProcessClickOnNode(String nodeID, MouseButtons button)
   at AGS.Editor.ProjectTree.projectTree_NodeMouseDoubleClick(Object sender, TreeNodeMouseClickEventArgs e)
   at System.Windows.Forms.TreeView.OnNodeMouseDoubleClick(TreeNodeMouseClickEventArgs e)
   at System.Windows.Forms.TreeView.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


Now, the rooms in question are not older than the others in the game so there is something fishy here.

First of all, why did the editor crash during the compilation? I have not changed the header file in a long time, during which I have updated the AGS version several times.

Secondly, why did this cause an "Old room format" exception? The rooms that are corrupt are rather old and were all created with old AGS versions (v2.6-2.7), but they are only 4 rooms out of at least 20 rooms which are equally old.

I would really appreciate if you could look into this, CJ! And I sure hope there is a simple way to restore the game into a working state again (I have backup of all the rooms that are not working).

Thanks!

PS. I am using AGS 3.1.2.82.
#2
I've been using FLC files for cut-scene movies, since they keep file size small and does not introduce artifacts such as those introduced by for example Xvid.

However, ever since I switched to AGS v3, my FLC movies don't show up on screen. There is only a black screen for the entire video duration and then the game returns as if the movie had played. It appears to me that the FLC support might have broken in the transition from 2.72 to 3.0. I haven't seen anyone else complaining about this, though.

Some details: It doesn't matter whether I use full screen or not, or DirectDraw or Direct3D. It makes no difference if the video files are located in the Compiled folder or in the main game folder. The same video files worked fine before the upgrade to v3, the only thing that changed was the AGS version.

Does anyone else have this problem? CJ: Do you have an idea to what it could be?
#3
Critics' Lounge / Mountain of cheese for C & C
Tue 18/09/2007 09:50:36
Hi.

I've been doing some digital art the last week, and this is the result. It will be a gift for my cousin. (We have a joke about having cheese in your pocket (meaning being rich) and also climbing the mountain of cheese (meaning becoming increasingly rich). Well anyway, I decided to draw him the mountain of cheese for his birthday. Here it is.

x0.25


It is too big to put full size in the forums, so instead I'll give you a link to the full HI-RES picture.
http://www.fovmester.se/images/ostberget.png

What do you think?
#4
I was working as usual with AGS, and was importing sprites into the sprites editor. When I tried to import a certain tga-file, the AGS-editor crashed with the following exception message:

(Exception 0x00000000 at EIP=0x00000000,
AGSEDIT 2.72.650, SIP=26)

This happened just after I had chosen the file and clicked OK. The file can be opened by Photoshop, so there seems to be nothing wrong with the file itself. And it worked when I copied and pasted from Photoshop.

#5
I know it is possible already to explicitly convert ints to floats with the IntToFloat command, but in most languages this particular conversion is handled implicitly.

Ex:
float nbr = 4; //interpreted as float nbr = 4.0;

This would be really useful to make the code look less cluttered. I mean what looks best:

float nbr = IntToFloat(4)
or
float nbr = 4;

The answer is obvious. So if you have time, CJ, I hope you can implement this!
#6
I'm using a gui to be a book in my game, where the text of the pages are a label. When turning the page I simply exchange the label text with another text from a big array. But when I run the game and turn the page I get this exception:

Error: SetLabelText: text too long

The text I tried to insert into the label was 192 characters long. It covers about half the page, which is also about half the size of the label.

I tried typing the same text into the label from the editor and it showed up fine in the editor, covering about half the page as expected.

Now, why then do I get this error when I use Label.SetText? I guess Label uses an array of characters (or maybe std::string?) to save the characters, and so it shouldn't be a limit put by storage space. I guess the limit is something that CJ has decided then, and if it's not too difficult, then please CJ, remove this limitation, because as far as I see it makes no sense and it would make my book work without having to do a lot of ugly workarounds.
#7
When I click the mouse on the bottom of the screen mouse.y > 220 no action happens. I looked into it and found that on_mouse_click isn't called when mouse.y > 220. My game runs in 640 x 480 resolution. Could that have something to do with it? Is it a bug? I don't think it's my coding (since I don't know how to prevent the engine from calling on_mouse_click whenever the user clicks).
#8
I have a problem with my game running out of memory after playing for some time. I am using quite a few repeatedly_execute_always functions and therefore I was wondering if there is any risk of AGS running out of memory when one is constantly polling in these functions. To examplify:

Code: ags

function repeatedly_execute_always() {
      if (mouse.y < 20) gGUI.Enable();
      else gGUI.Disable();
}


This code will poll the engine 40 times per second for the y-coord of the mouse and call either Disable or Enable 40 times per second? Is this a reasonable way to program or will it suck mem?
#9
How do you get the characters to blink when you've given them a blink view?
I stood beside one of my "blinking" characters and she never blinks!

What have I missed!? Doesn't it work sort of like idle-view?
#10
I'm taking a break from Frank the Farmhand. Instead I'm doing a more fable-like game called Woodlands. Here's a short introduction:





In a distant corner of the world, where no man has ever gone, lies an old and great forest. It is a magical place tended to by nirils;.the forest spirits. The nirils are ruled by Nergal, the most beautiful and powerful of the spirits. It is because of Nergal that the woodlands are free of the nasty creatures that roam the rest of the world. It is because of Nergal the creatures of the forest can lead their lives in peace, unknowing and happy. Until now that is.

Because Nergal has suddenly disappeared. And without the blessed powers of the spirit, evil is seeping into the forest. The inhabitants are starting to argue, plot against eachother and steal. And a man has appeared in the woodlands. A short man with nasty creatures in tow. And he is threatening the woodlanders demanding gold and other valuables in return for his protection.

You are Tom, a solitary creature who lives in the outskirts of the forest. When the mysterious man comes to demand payment, Tom refuses and the man responds by burning Tom's house to the ground. Furious, Tom swears to rid the woodlands of the intruder and get his revenge...



Downlad the demo here!! --> http://www.fovmester.se


And here are some screenshots:










Updates:
2008-01-23: Life sign

2007-11-01: Progress report

2007-07-10: Progress report

2007-03-04: New screenshot

2007-02-25: Progress report.

2006-09-20: Progress report and new screenshot.

2006-08-02: Progress report and new screenshot.

2006-06-16: Progress report.

2006-05-23: Progress report and new screenshot.

2006-04-12: Progress report and new screenshot.

2006-03-04: Progress report and new screenshot.

2006-02-12: Progress report.

2005-12-08: New Screenshots and progress report.

2005-09-29: Progress report.

2005-09-06: New character-graphics in a reply

2005-08-18: New screenshot in a reply





Progress:

Story: 99 %

Graphics: 90 %

   1. Backgrounds: 4 left
   2. Cut-scenes: 2 left

Sound and Music: 80 %

Animation: 80 %



More info and status reports can be found on my homepage.

http://www.fovmester.se


#11
I've made it so that the status-line gets a property whenever the mouse-pointer is over a hotspot (in this case a door). So if you have the Use-command it reads the hotspot's Use-property for the text to be displayed in the status-line. Use Door -> Open Door.

The problem is that when the door is opened I want the status-line to read Close door. But the Use-property of the door is "Open" from the start, and I can't change properties at run-time. I can think of several work-arounds. But I want something that is general and don't mean that I have to hard-code some test (to see if this particular door is open or not ) into the status-line-code. Because then I'll have to do it for every door in the game, which will make sloppy and unreadable code before long!

Has anyone tried doing the same thing as I, and come up with a good solution?
#12
I want to have some text showing what's under the mouse cursor. And I want that text to be just below the cursor no matter where the cursor is. So I put the text in a GUI and thought I'd use repeatedly_execute_always to reposition the GUI to the correct position.

The problem is that when some interaction takes place, for example if I click on a hotspot and the character is walking over to that hotspot or he's talking the GUI is not repositioned! It's working fine otherwise (that is when no blocking script is running). What's wrong? I thought that the whole point of repeatedly_execute_ALWAYS was that it would execute ALWAYS!

This is the code I put in my global script:

Code: ags

function repeatedly_execute_always() {
    
  int mx = mouse.x;
  int my = mouse.y;
  int lx = mx;
  int ly = 0;
  
  int width = gLabel.Controls[0].Width;

  // this is to prevent the text from not showing if the cursor is too far to the right.
  if (mx>320-width)
		lx = 320-width;
	
  // this is because I want the text to go up above 
  // the cursor when it's at the bottom of the screen
  if (my > 220) 
		ly = my - 15;
  else ly = my + 10;
  
  gLabel.SetPosition(lx, ly);
}


Can anyone help me?
#13
Hi.

I want my characters to have shadows, and the easiest and most nice-looking way of doing that would be to draw the shadow into every character-sprite. So I've done that (in Graphics Gale). I drew the shadow using grey color and an alpha-channel so it's transparent.

But now to my problem: How can I import these sprites into AGS and preserve that transparency?

I exported my images from Graphics Gale to PNG-format with alpha-channel. And when I import them into AGS the editor asks me if I want to use the alpha-channel so I answer yes. But when I test the game the shadow is not transparent!

What am I doing wrong!?
#14
Critics' Lounge / Forest and house background
Mon 04/04/2005 11:53:13
What can I do to improve this background?

I thought about adding more light-reflections on things, like the purple color I've drawn on the two closest trees. But I'm not sure what extacltly I should add!

#15
Critics' Lounge / New character for C&C
Mon 04/04/2005 10:32:57
Hi. I've made a new character that I'd like some C&C on.


1x 2x

Side view:

1x 2x

What do yo think?
#16
Version 1.1:
Changes since version 1.0:
* Fixed some missing room interactions.
* Cleaned up some dialogs.
* Added options to some dialogs.
* Made rope-hotspot larger.
* Fixed lots and lots of grammar-mistakes (Thanks to Steve McCrea)
* Changed icon to be consistent with part 1's icon.

Version 1.0:
Finally! It's taken me one year of production to finish this game. So rest assured that there's A LOT of time and effort put into this title.


Story:
After having escaped from the agents, Frank and his friends are captured by the american military and brought to a military camp on the island of Guija.
Frank needs once again to save his friends, and escape from the clutches of the Syndicate!



In the second part of Frank's adventures you'll find yourself on an exotic island with lots of new characters to interact with, and many challenging problems to solve.

This game is bigger, better and more beautiful than its predecessor!

Download it NOW!!!! And don't forget to vote!








#17
I noticed that you can switch to another dialog from within a dialog by using the goto-dialog X command. But this really CHANGES dialog, not just temporarily.
EX:
Let's say we run dialog X and somewhere inside it we want the characters to start talking about a specific topic Y without showing the other dialogoptions of dialog X. If we do this by goto-dialog Y then when we're finished talking about Y (a stop-command in Dialog Y) then we DON'T COME BACK TO DIALOG X like we should but the dialog is stopped. Period!

My suggestion is that this kind of nesting of dialogs is made available, because it really makes possible advanced dialoging without much effort. You could do something like the above with use of globalints or a lot of option-ons and -offs but by nesting different topics it's all made really easy!

So in short: If you call a dialog using the goto-dialog you should come back to the same place in this dialog after finishing the other.

Maybe sometime you'd really want to NOT come back. Maybe an option could do that:
EX: goto-dialog X OPTION
where X is the dialog to go to and OPTION is 1 if you want to come back and 0 if not.
#18
Critics' Lounge / C&C on Titlescreen
Fri 22/10/2004 11:17:13
I've made the titlescreen for Frank the Farmhand part 2, and I just wanted to make sure it got as good as I can do it.

I haven't added the titletext itself but this is what'll be behind it:

#19
Hi. I want to show you my newest background just to see if there's anything you can see that I can do better with it. I'm not sure about the angle of the "tent's" shadow. Is it right as it is?
#20
I need to get an object to move really slow so I used MoveObject with speed set as 1. This isn't slow enough though, so I wondered if there's a way of making an object move even slower.

I could make the object into a character and move it by changing the character[].x and -.y variables but that's not really elegant, i think.

Does anyone have an idea how to do it?
SMF spam blocked by CleanTalk