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

#981
Looks like malware, to be honest. What protection are you using? Do a check.
#982
(1) Your perspective is completely off (google 1-point perspective for example).

(2) The design of your room is very, very simple (just a cube), so adding in detail will be very hard. Once you have the knowledge of proper perspective, it'll be easy for you to add in details such as lowered ceilings, walls connecting two perpendicular walls in a 45° angle etc. This makes for more interesting detail than hours spent pushing pixels around for visual stuff here and there (that's good, too, but you should not just fill an entire cube shape like your room with it or you'll go mad).

(3) You defined your light-source (the window) pretty well and added shadows that seem correct so far, but why choose blue for walls? Why pink for the ground? This gives it a very weird feeling, dunno if that's what you're after. This weird palette usually goes better with comic style rooms, not semi-realistic ones.

(4) Why that resolution? I'd strongly advise you to redraw the room in 320x200, that's the resolution where you'll learn the most in the quickest way. Like that, the room wouldn't import into AGS without scrolling.
#983
It's done when it's done! :P

But I will swear that I release this. Even if I happen to lose motivation or whatever, I will release what I have. So you can rest assured that you will definitely get SOMETHING! :)

Thanks for the heads up, everybody. Today I fixed some texture stuff (the plugin now allows textures to be all sizes up to 256x256, they don't even have to a power of two dimension - and they can be mixed, a level could use 32x32 textures on some walls and 128x128 on others, etc) and I fixed the enemy waypoint system. So, now you can add enemies and waypoints for all enemies in the map editor - they'll loop through these and patrol, when they see the player they'll engage in a fight, try to come closer etc. Now I'm working on animations for enemies.
#984
Thanks everyone! ;D

QuoteDownloading wise..is there a link for that plugin?

It's not done yet. I will release it bundled with a game (and release its source as well).

QuoteDoes this include collision of bullets with enemies?

Ah, this is not in the current version of the plugin (had it in an earlier version though) - but I see two ways right now: leaving it to the user to write in the game or allowing the user to select pre-written ways such as a simple hit-scan, support for projectiles and splash damage.

QuoteOne question though: am I correct that the raycasting works on a 2D basis, like in Doom? I.e. you can't really look up and down, just raise or lower the "camera"?

Yep, but looking up and down is possible by moving the horizon up and down. This is not a correct way, it distorts the more you do it but it's barely noticeable. This is called y-shearing, I believe. In addition, moving the camera up and down is perfectly possible to simulate jumping/crouching as you said.
#985
General Discussion / Re: MythBusters
Sun 04/01/2009 00:05:32
Love it!
#986
Ah! Thanks, works like a charm!
#987
Quote from: Lt. Smash on Sat 03/01/2009 13:37:04
just another question: will it be possible to make doors or move objects (like in Wolfenstein)?

Walls are not fixed, so they can be moved/rotated etc. dynamically. Now, I don't know quite how much wall animation I will implement (again, it does make stuff difficult, especially for the editor and the map file format) but doors that move up or slide open are definitely going to be in there!

Anyways, here is a quick shot of the editor to give you guys more of an impression as to how levels work:


Red lines are walls (duh), gray is the grid (remember, it can be turned off for completely free drawing of walls or entities, and it can also have different sizes), the dots are the player starting location and several objects (tables in this case, I believe). Textures are not yet selectable from the editor, working on that. For the video, I just opened the map file and added the texture flag (what texture to use for this wall) myself (that's why the map in the video isn't textured very well)...
#988
Thanks everyone!

QuoteProgram-wise, I'm interested in how pathfinding and enemy AI will work...  And what are the system requirements?
At the moment, every enemy has a list of waypoints which are placed in the editor beforehand. Enemies will loop through this list until they see (or hear) the player. What happens in combat, I'm not yet sure about. First I'm thinking of them stopping and just aiming and shooting the player.
System requirements: the plugin just uses allegro's 2d drawing functions so I suppose they aren't exactly high. As I said, on my 7yr old machine with old gfx card it still runs at max frames. It does NOT require the modern d3d driver or anything.

QuoteWill this be able to support a mouselook system?
Already does. :) The controls in the video you can see work exactly like in all modern-day fps on the pc. WASD for moving/strafing, mouse to aim (horizontally and vertically), etc.

Quote
-Will you be able to have platforms/rooms of varying height? (ie, Doom levels as opposed to Wolfenstein 3d levels)
I'm not yet sure about it. Will do some tests to find out exactly how hard this is. Drawing walls with different height is somewhat trivial (already had that in an earlier iteration of the plugin), but walking up steps etc. isn't quite as easy. AND the editor would be much more complicated, too. I'll think about it!

Quote-Is there a limit on the weapon used? Ie, will it be easy to add multiple weapons to the game, with different damage/rate of fire characteristics?
This is a good time to explain the flexibility-feature I put into that feature-list in the first post: the plugin is really just for the rendering of the 3d-stuff, all weapon code for example is in the game itself. Take the way the pistol bounces up and down when running in the video - that's not fixed by the plugin, that is all in the game. And the game is what the user is going to write him- or herself! This means that, while the user has to do more than call one or two simple commands but in return he gets a way more powerful plugin.
So, to summarize, any game any user creates with the plugin can have any number of weapons which can all work completely different - it does not depend on the plugin.

Quote-How does the level editor work exactly? Do we need to create an image, a 3d file, a text document? A series of regions/hotspots/walkable areas?
The editor is just another AGS game and basically works like MS paint. You get a blank canvas and you can draw walls onto it just like drawing lines with the line-tool in paint. Additionally, it features an optional grid at various sizes to which the lines can snap if you want to. Then you can also place sprites for objects, enemies, enemy waypoints and the player start. When saving, you enter a filename and the editor writes the file. That you take and copy into the game folder and load it using the plugin-command LoadMap (or similar). :)

Quote-Will there be in game functions for things such as collision detection/item interaction (shooting dudes/getting shot and opening doors), ammo count and player health, to make it easy for non advanced scripters (me) to build their own fps?
Collision detection between the walls and objects and enemies will be done in the plugin but you will be able to deactivate it for flying/noclip simulation. Player health, ammo count etc. are all done in the game, so no limitations there! I'm not yet 100% sure about the AI, I'd like to let the user write his own but I also want offer a default behaviour maybe, because writing the AI is not exactly easy.

Hope this answers some questions and I'm glad this is of interest to people!
#989
For a few days now I have been working on a plugin for AGS that allows the rendering of 3d worlds and sprites through a technique called raycasting. It works very similar to how the first ego-shooters such as Wolfenstein 3D and Doom 1 worked.

Here is a link to a youtube video for a preview:


Click the image to view the video...

The engine features the following at the moment:
- walls can be rendered at any angle, round parts are possible
- as many textures as you like
- sprites for objects and enemies*
- waypoints for enemies*
- comes with an editor for levels
- is designed in a flexible manner: the actual game controls the crosshair or the weapon or the movement etc. (so more than straightforward shooters are possible)
- runs stable at 40fps, even for more complex scenes (in-depth stress testing will still follow)

*these features are implemented but not shown in the video, sorry, my hard-drive is too full for longer footage.

Any feedback, you think you could use this in a game?

Oh, and before I forget - the next you are going to see about this is most likely going to be a short deathmatch game using this plugin.


#990
Ok, another thing I'm not so sure about: is it possible or expected that functions exported from plugins (such as the Add/Subtract functions in the template on acplugin.htm) can not take floats as return type (but as parameter it works)? Whenever I try to create a - say - float ReturnSomeFloat ( ) function, it gives me 0.0 or garbled values. Can somebody confirm? I'm pretty certain that I'm not doing something wrong at the moment.

Thanks ahead of time.
#991
General Discussion / Re: Happy New Year!
Thu 01/01/2009 15:52:39
My first crap in 2009 smelled like black powder. :o

Anyways, been out until 6 in the morning, armed mostly with a 0.7L bottle of Captain Morgan. 'Twas okay.
#992
Oh, didn't know these lower-case versions starting from 97 exist at all. That makes sense. Thanks.

EDIT: Of course, then this description "ASCII value of keystroke, as text script on_key_press" in the plugin-manual is somewhat misleading though, maybe a star with a short clarification could prevent others from asking this again.
#993
I am currently writing a plugin and when I try and react to keypresses trough the AGSE_KEYPRESS-event the following bug occurs:

Letters (for example a [65 or something]) only work when the user hits them with shift, it only works with capital letters - and not, as the plugin-manual says, just like in AGS. This should be easy to fix, right?
#994
This just appeared out of nothing:

Code: ags

Error: StartIndex cannot be less than zero.
Parameter name: startIndex
Version: AGS 3.1.1.66

System.ArgumentOutOfRangeException: StartIndex cannot be less than zero.
Parameter name: startIndex
   at System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy)
   at AGS.Editor.ScintillaWrapper.CheckFunctionForLocalVariables(Int32 currentPos, ScriptFunction func, String scriptExtract)
   at AGS.Editor.ScintillaWrapper.GetListOfLocalVariablesForCurrentPosition(Int32 currentPos)
   at AGS.Editor.ScintillaWrapper.FindLocalVariableWithName(Int32 startAtPos, String nameToFind)
   at AGS.Editor.ScintillaWrapper.GetFinalPartOfExpression(Int32 currentPos, ScriptStruct& memberOfStruct, Boolean functionsOnly)
   at AGS.Editor.ScintillaWrapper.ShowCalltip(Int32 openingBracketPos, Int32 parameterIndex, Boolean functionsOnly)
   at AGS.Editor.ScintillaWrapper.scintillaControl1_DwellStart(Object sender, DwellStartEventArgs e)
   at Scintilla.ScintillaControl.DispatchScintillaEvent(SCNotification notification)
   at Scintilla.ScintillaControl.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)


Didn't do anything though, didn't crash or anything.
#995
General Discussion / Re: Feline tendencies...
Tue 23/12/2008 17:22:07
I'd call it Lord Nibbler. Of the Niblonians.
#996
Quote from: Pumaman on Sun 21/12/2008 16:17:57
QuoteGives completely wrong, random results when I draw something after calling DrawingColorRGB. Calling the function with ( 0, 255, 0 ) should give me green, it gives me pink, calling it with ( 255, 0, 255 ) gives me white, ( 255, 0, 0 ) gives black etc.

I can't reproduce this problem. What colour depth is your game?
When you say that the second example works, what colour number are you passing into it?

Solved the problem, I forgot to import an actual black background for the room, so the color depth was messed up or something. It works fine now. I always forget to import an actual room image now that the room starts out with a black image initially. Is there any way around this, a warning or some kind of automation?
#997
Okay, this was extremely hard to decide, I loved all the entries and they really all had at least ONE thing really amazing about them, but in the end I liked Inkoddi's entry the most. He also did a lot of extra work, even drawing that mock-up etc.

As I said, I was happy with the participation and the quality, thanks guys!
#998
Okay, then this is closed now. Thanks for all your entries. Winner will be announced shortly.
#999
In AGS 3.1.0.59, 16-bit game:

(ignore 'r' -> 'are' through spelling corrector)

Code: ags

function CRenderer::SetDrawingColorRGB ( int are,  int g, int b )
// sets drawing color
{
      // select new color
      this.Surface.DrawingColor = Game.GetColorFromRGB ( are, g, b );
}

// then later
Renderer.SetDrawingColorRGB ( 0, 255, 0 );


Gives completely wrong, random results when I draw something after calling DrawingColorRGB. Calling the function with ( 0, 255, 0 ) should give me green, it gives me pink, calling it with ( 255, 0, 255 ) gives me white, ( 255, 0, 0 ) gives black etc.

Code: ags

function CRenderer::SetDrawingColor ( int color )
// sets drawing color
{
      if ( this.Surface.DrawingColor != color )
      // if new color is not already selected
            // select new color
            this.Surface.DrawingColor = color;
}


The above function works, however, which is why I think that it's a bug in AGS. Can anybody confirm?

EDIT: Also, I imported a module named "Renderer" in another project, in AGS 3.1.0.59 it renamed it to "renderer" (lower case) and whenever I try to capitalize it, it says "Module 'Renderer' already exists". I can rename it to "renderer2" or "rensjfkdgsdkf2", but even when capitalizing THAT it'll say "Module 'Rensjkfdjkdfsd2' already exists".
#1000
Okay, ~16 hours left! If you are working on something it might be a good idea to let me know here, just so I don't close the competition before you've entered. Also, if an extension feels necessary now is the time to let me know.
SMF spam blocked by CleanTalk