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

Messages - Yeppoh

#101
I tried on my Intel chipset graphic card and the Nvidia one on another computer. The problem appears on both. When I enter, for ex., Tint(255,240,0) it returns  me (255,0,15).

However, from how the bug appears, it almost feels like a badly processed float is generating the issue.
#102
I discovered something new about this bug while trying to find a pattern to maybe correct it through script (actually looks possible).

I discovered that everytime the bug occurs, instead of visually returning the normal Tint( R, G, B, 100, 100 ), it returns as it was Tint( R, B, (R-G)+B, 100, 100 ).

The occurence of the bug looks random though, depending of what value are put into the function.

And I also discovered if I want to obtain what should, for ex., return Tint(255, 242, 0, 100, 100), I need to type Tint(254, 241, 0, 100, 100) and... tada! The former colour is there. It follows this rule : R - G = 255 - G , but sometimes this rule applies, sometimes not, and for now I need to manually find the right combination of values to find the right colour. There must be a pattern, but I didn't find it yet.

Hope this helps to find and correct the bug. I'll post more when I found something new.
#103
Only in D3D. It works fine in DX5.

Oh! I almost forgot. Happy New Year CJ!
#104
I was debugging my RGB to HSV function for compatibility issues between 3.1.2 and 3.2 version of the Tint function that was reverted back to its original behaviour from previous versions.
I discovered, when incrementing or decrementing one the rgb parameters, the colours "jump" instead of a smooth change of the hue.

The "bug" happens if either the blue value or the red value are less than the green value, and only if the green value is lesser than 255 : ( (g > b || g >r) && g<255 ).

For example :  Character.Tint(255,255,0,100,100) gives the genuine Yellow hue;
But when I decrement green by 1 :  Character.Tint(255, 254, 0, 100, 100) gives Red unexpectedly, as if I typed Character.Tint(255, 0, 0, 100, 100);
When decrementing green by 4 : Character.Tint(255, 251, 0, 100, 100) gives the expected really slightly redder Yellow;
After that, every 7-10 decrements, it either jumps between the pure Red or the expected redder hues of Yellow to Orange;
Except, after 128, it doesn't change from orange to red, it jumps between hues of Magenta and Red : Character.Tint(255, 1, 0, 100, 100) gives Magenta instead of a Red with 1 of green, as if I typed Character.Tint(255, 0, 255, 100, 100).

For me intuitively those jumps look like a bug, but maybe the Tint function works within a different pattern. But if that's so, can someone tell me how the parameters of the Tint function are processed?
#105
Good work guys! Merry Christmas! Have a good time with friends and family.
#106
Just reporting some issues with the latest release.

QuoteError: Impossible de charger le fichier ou l'assembly 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ou une de ses dépendances. Le fichier spécifié est introuvable.
Version: AGS 3.2.0.103

System.IO.FileNotFoundException: Impossible de charger le fichier ou l'assembly 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ou une de ses dépendances. Le fichier spécifié est introuvable.
Nom du fichier : 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
  à AGS.Editor.ScintillaWrapper.GetAutoCompleteScriptList()
  à AGS.Editor.ScintillaWrapper.FindGlobalVariableOrType(String type, Boolean& staticAccess)
  à AGS.Editor.ScintillaWrapper.ParsePreviousExpression(Int32 startAtPos, String& charactersAfterDot, Boolean& staticAccess, Boolean& isThis)
  à AGS.Editor.ScintillaWrapper.GetFinalPartOfExpression(Int32 currentPos, ScriptStruct& memberOfStruct, Boolean functionsOnly)
  à AGS.Editor.ScintillaWrapper.ShowCalltip(Int32 openingBracketPos, Int32 parameterIndex, Boolean functionsOnly)
  à AGS.Editor.ScintillaWrapper.scintillaControl1_DwellStart(Object sender, DwellStartEventArgs e)
  à Scintilla.ScintillaControl.DispatchScintillaEvent(SCNotification notification)
  à Scintilla.ScintillaControl.WndProc(Message& m)
  à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
  à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
  à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

This File not found exception happens randomly when a script pane is open and I scroll, or click on the menu.

Then the ags LUA Plugin doesn't seem compatible with this editor version.
#107
OK thanks for clearing that out.

Meanwhile, after I ran some tests to understand the difference with the actual Tint(), I can use a RGB to HSV conversion using the "hexcone" model. The color values won't be exactly the same since I have to sample a 255 scale down to a 100 one for the luminance, but it'll be visually close enough to do the trick if nobody is so obsessive to check if the pixels match the shown numbers.
#108
I have quite an issue with the Tint() function in this version of the engine.

Until now I scripted my game on the 3.1.2 SP1 release - using DirectX 9 - and there's a critical gameplay element involving colors. A set of characters whose colors change depending of a binary word value. There can be 4bit colors, 5bit, 8bit, 16bit or 24bit as examples from all the ones.
How the Tint() function worked in 3.1.2 was intuitive and fine tuned for this kind of work, since I only had to convert a byte word into simple RGB channels. And after some work the result turned out fine as showed for this character - who uses only one 8bit channel in this case:



But upon switching to 3.2, it doesn't work anymore :



I noticed that the Luminance value seemed to have a different behavior than previously, so I set it to 100, but didn't give the same result either :



After many testing I've also discovered that my trick doesn't work in DirectDraw mode - neither in 3.2 nor in 3.1.2. Giving the same results as the last two above.

I don't know how I could go around that while being sure that the result will be as correct as in the previous release of the AGS engine, since I don't know how the Tint() system has changed or if it's a bug.
#109
Quote from: Pumaman on Mon 18/05/2009 20:02:27
QuoteI created a Custom Propriety (for a Character) and the title string (called for Character.GetPropriety()) was too long. It was notified when compiling. Due to a stupid reflex I double-clicked on the error line to get automatically at the faulty line in the script. Of course there's isn't one, since it's in the editor API, thus nothing happened, visually. But... I couldn't open the Character Editor anymore to correct it in the Custom Propriety window.

Hmm I couldn't replicate this problem. I created a custom property with a long name, got the error when compiling, double-clicked it and nothing happened. But then I could still carry on and open the Character Editor as normal...

For some unknown reasons I can't replicate it either. I can't remember if there might have been something I missed.
#110
Quote* handle other places that expect a sound number, eg. Score Sound, View Frame Sound

I met this situation. Indeed. I have assigned step sound on walk animations in the editor and the game crashes at that point. So I can't test the engine further for the moment. =P

I found two non-critical little bugs (and I noticed they were in the previous version of AGS too) :

Custom Proprieties Stop Character Editor Bug:
I created a Custom Propriety (for a Character) and the title string (called for Character.GetPropriety()) was too long. It was notified when compiling. Due to a stupid reflex I double-clicked on the error line to get automatically at the faulty line in the script. Of course there's isn't one, since it's in the editor API, thus nothing happened, visually. But... I couldn't open the Character Editor anymore to correct it in the Custom Propriety window.
I needed to re-start the AGS editor.

The Undo Bug:
In the GlobalScript, I wrote a null global String variable (let's call it 'htspt' - and without 'export' yet) outside any function; that is called/written in the on_mouse_click() and called/read in a function below. Compiled, tested. It was fine.
Then I considered it was maybe better to put that global String in another Script Module (let's call it sGamePlay) that was before the GlobalScript. So I cut (with Ctrl+X) the line containing the global String 'String htspt;' and pasted (Ctrl+V) into sGamePlay.
Then I reconsidered that it was maybe not a good idea and it was better leaving it in the GlobalScript; until that thought, I didn't do anything yet: no saving, no compiling, no adding 'export', no typing - excepting the Ctrl+V.
So instead of cut and pasting back again, I just undid (Ctrl+Z) what I did in both Scripts so that they were like they were before the change; the '*' disappeared in the tab. And I just pressed F5 to check.
The compiler returned me the error that the String 'htspt' token wasn't defined, although it was.
I needed to retype the line - not necessary the whole line, just partially; I had, for instance, to erase a character like the ';' and put it back. Then it worked fine.
#111
Quote from: Trent R on Mon 27/04/2009 18:23:32
Quote from: Nefasto on Mon 27/04/2009 16:39:01
One of the actual solution I would try to go around the issue of the System Limit Problem with sprites (if I have to) is to split the game in many executables and use RunAGSGame().
That's what I said above! ;D

~Trent

Oh! You're right. Sorry. Somehow I didn't see it. =P
#112
- This applies for the total number of Sprites in AGS. -
One of the actual solution I would try to go around the issue of the System Limit Problem with sprites (if I have to) is to split the game in many executables and use RunAGSGame().
Each .exe having the basic redundant global sprites (like the main character's, the GUI's, etc...), and the sprite slots left are for the local exe.

So technically for N AGS executables you have : (N*30'000)-((N-1)*TOTAL_GLOBAL_SPRITES) slots.
Example : 5 AGS executable, main one included, with 700 global sprites you'll have : 147'600 sprites for the whole game. Jinkies! Who needs that many?!

Of course this depends how the game is designed.
For instance :
I'm designing a game with six distinctive worlds. I could split the game into 6 exe and one world for each respectively. And I go from one world to another using RunAGSGame().

This is a theory I didn't try yet with RunAGSGame(). I'm not even sure if it could work.
I don't know how the global variables are managed, if I every .exe can share the same variables (if it isn't possible, I could use a external temp file - or I design a game that doesn't need to share variables and that all events are local).
#113
I think I've finally discovered and resolved the issue. It wasn't because of AGS Engine, but because of a faulty driver... of  my Pen Tablet.

A little background :
For some time my computer had, when I shut it down, a error stating : ' The instruction at "0x00000000" referenced memory at "0x00000000". The memory could not be "written" ' (or sometimes "read").
After googling I learnt that some softwares and/or drivers make this happen, because of faulty coding that allocate it in the memory where it shouldn't.
Since it happened at the end of a session and didn't stop the computer of shutting down (just a little unesthetic imperfection), I haven't given any attention until rencently when I had time to look into it.
After some investigations, I discovered the driver of my Pen tablet was at fault. I removed it and installed a up-to-date one.

I never linked this problem with the issue I had with my AGS game. Until last night when I remarked :
"Hey! It's been a week and the Game shuts itself down properly now."
It took me twenty minutes, then I connected the dots : "Ah... That's a convenient coincidence..."

Somehow I may speculate that, because of this bad allocated driver, it thwarted occasionally AGS to dump the game correctly from memory, since I noticed the game was only 25-50% dumped before crashing. But I can be mistaken.

I'll keep you informed if it happens again.
#114
It does happen without the debugger too; only when windowed though.
#115
When shutting down the game I'm working on (either with QuitGame() or Alt+X), in windowed mode, launched from the editor (debugging enabled), sometimes the game freezes. Most of the time I need to kill the process.

Sometimes I get this error :
  'unknown software exception (0x40000015) at location 0x00465b4b;'

Or sometimes it doesn't and shuts down properly.

Due to its random nature I couldn't find out if it's a problem coming from my computer, or the engine, and what exactly.

Until now it didn't happen when fully compiled, and/or full screen. It isn't a major hindrance, just annoying sometimes  while I'm working on it.

I have this issue on Windows XP SP3, while on Win2000 it works fine. I remember it didn't occur before version 3.1.2 of AGS.
DirectX 9 is the most up to date.

Thank you for helping me on this one.

#116
Yep. That would have been the most logic solution.

Tried.
Doesn't work that way.

Either it's still blank (if alpha  as true), or drawn onto a plain FF00FF transparency color silhouette (if alpha as false) like GarageGothic described.
#117
Hello. I'm quite new around here and working on my AGS game during my free time. When I'll have a concrete demo to show you'll be the first to know. Maybe CJ did read it many times already, but : Great work for this editor !

During the scripting of some SFX it occured to me something was missing for the DynamicSprite.
Since there's a DynamicSprite.Tint() function I would like a DynamicSprite.Transparency() one. It will be useful for Overlays with alphablended sprites mainly (and my echo effect).
If it's something that can be done.
I tried many ways with DrawingSurface, not to avail.

Cheers.
SMF spam blocked by CleanTalk