Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

What are you working on? (Game Making Thread)

rey meustrus":1pncvl24 said:
Wouldn't you need to use a mutex anyway to make sure that two worker threads don't start the same job at the same time?
I'm having job distribution done on a single thread while the workers are sleeping, so they get given batches of jobs in priority order before being told "okay, now work through your job list while I do main thread stuff", so after you stacked up jobs you must distribute them and the workers wake up after distribution.

I found that this way is much safer than how I had it before as mutexes slow down processing a lot so it's best to avoid them and just use atomic operations to manage the threads.
 

Jason

Awesome Bro

Still trying to fix my game since I can't play it once it's compiled, it throws a bitmap error at me at the same part every time, tried it with eight people and it's the same thing, fuck knows what's going on... I'm not going to progress with the game until I can get this sorted out, I mean, what's the point working on the game even more if it STILL won't work? It's really pissing me off though...
 

Jason

Awesome Bro

Just made with RMVX Ace, it's throwing me a bitmap error at the same part everytime, when there's only one image displayed onscreen, yet even when I remove the image from that particular scene, I still get the error... it's getting pretty fustrating actually
 
I looked at Jason's problem and I couldn't replicate it. I think the image being created is a face set being loaded. The only reason I can think of for it to throw the error it's throwing is lack of memory.

@Xhukari: It's OK. Nobody here can.
 
rey meustrus":8oxubpgm said:
@Xhukari: It's OK. Nobody here can.
I've been on the same project for a while now, I honestly believe that good planning helps here and if you keep switching projects then it's a sign that they weren't good projects to begin with.

Speaking of planning, I've just installed the latest version of MS Office Visio, turns out that I can get it for free through my university (It's a shame that I still have to pay for actual useful office programs!).

Visio is systems planning tool, I am going to use it to model my battle system and perhaps some of the events that occur in Battle World RPG, projects always seem large and daunting until you break them down into smaller tasks and it's things like system diagrams that really help show you how simple your workload is and, before you know it, your game is well on it's way to completion.


I've also been wrestling with compiling my systems for 64bit machines, I'm porting my entire project to 64bit as I'll be profiling a lot of it on a 64bit Mac in the future and going from 64bit to 32bit is easier than the other-way around, so I'm porting it now.

Everything compiled fine, my game's engine bulk is actually 64bit safe already which surprised me entirely, problems started with the scene engine, crashes at runtime so I'm now trying to find someone to help me out with that one!
 

Jason

Awesome Bro

rey meustrus":1ioj7qgm said:
I looked at Jason's problem and I couldn't replicate it. I think the image being created is a face set being loaded. The only reason I can think of for it to throw the error it's throwing is lack of memory.

@Xhukari: It's OK. Nobody here can.

But, lack of memory on what side, since I've got 12GB of 1600MHz DDR3 RAM, so it's definitely not me...
 
Maybe your operating system is rationing a tiny amount? There are sure to be differences as I could only test your game in a virtualized copy of Windows XP (I don't have any other Windows systems available anymore).

On Visio, look at all your options before you stick to that one. Unlike most MS Office programs, the file format isn't widely reverse engineered. Unless things have changed since I was trying to use it, every collaborator will need Visio. But if you don't have collaborators, it won't matter anyway. I ended up with LibreOffice Draw, which is admittedly inferior but at least the editing program is free for everyone.
 
No collaborators at the moment, and I plan on passing the diagrams around as flattened PNGs

Using the trial of PVS studio right now, it is very powerful but so damn expensive that I'll never be able to buy the full thing!
 

Jason

Awesome Bro

So, now that I've installed Windows 7 on my new SSD (Using it as my primary drive), I tried my game, and huzzah it doesn't crash while playing! Now I can carry on with development, woo! :biggrin:
 
Yesterday I wasted the afternoon messing with scripts. Didn't really accomplish anything. I don't feel like working on character graphics right now so I'm re-imagining scenes for Lucid Awakening 2.
 
Jason":1o3wbek7 said:
So, now that I've installed Windows 7 on my new SSD (Using it as my primary drive), I tried my game, and huzzah it doesn't crash while playing! Now I can carry on with development, woo! :biggrin:
I would never say huzzah as it means there is an error in your application that could happen to any users who had a similar setup to your old windows install.
 
Working on some 8-bit styled characters of Penumbra Hearts:
All_sprites_so_far.png

I say "8-bit styled" cause if it was really 8-bit I would be limited to 3 colours...
 
Hiccup":alcp04lk said:
Working on some 8-bit styled characters of Penumbra Hearts:
All_sprites_so_far.png

I say "8-bit styled" cause if it was really 8-bit I would be limited to 3 colours...
You'd actually be limited to 256 colours with 8 bits, the 8bit era consoles didn't all have 8 bit graphics, most of them had 2 bit graphics with palettes, the NES had a 6 bit palette.

Also your resolution is messed up and your pixel sizes are inconsistent, it looks more like you used MSpaint and gave it 2 minutes thought than 8 bit era graphics
 
Xilef":1aalhkcu said:
Hiccup":1aalhkcu said:
Working on some 8-bit styled characters of Penumbra Hearts:
All_sprites_so_far.png

I say "8-bit styled" cause if it was really 8-bit I would be limited to 3 colours...
You'd actually be limited to 256 colours with 8 bits, the 8bit era consoles didn't all have 8 bit graphics, most of them had 2 bit graphics with palettes, the NES had a 6 bit palette.

Also your resolution is messed up and your pixel sizes are inconsistent, it looks more like you used MSpaint and gave it 2 minutes thought than 8 bit era graphics
Ah fair enough. I read somewhere that if I was going for 8-bit I'd be limited to 3 colours, but meh.
My resolution is messed up? Yeah... I didn't do 16x16 or 16x32 because I suck.
Did use ms paint. Just saying.
But yeah, people have said that the pixels are inconsistent. I don't really get what they mean. Is that just me being stupid?
 
Hiccup":31etzx40 said:
But yeah, people have said that the pixels are inconsistent. I don't really get what they mean. Is that just me being stupid?
Yes.

You have squares that are 2x2 pixels in some places and then you go high-resolution 1x1 pixels in other places. So your character's eyes are 2x2 pixels but the bow string is 1x1 pixels, why aren't the eyes made up of 4 1x1 pixels with more detail?

The shoulders of the blue shirt is 2x2 pixels, the gab in the legs is 2x2, but his mouth and bow string is 1x1?

Same with the sword girl, hair is made up of 2x2 blocks but the sword is high-resolution 1x1 blocks?

I suggest you stick at 16x16 or 16x32, make the sprite and then double it's resolution and see how you feel about it afterwards. On the NES the graphics were made up of 8x8 tiles with 4 colours, 1 of those colours being a reserved on which gives you the 3 colours you were thinking of, but those are palette colours so every 8x8 block the 3 colours could change to any 3 of 64 colours.
 
Going to bump this thread with a tiny piece on what I'm doing right now.

So I'm right now hooking up more of the scripting engine to the map objects.
http://www.youtube.com/watch?v=nW225v3rfww

I am using angelscript, however I've decided to hold off from using some of the advanced features (Mostly the object types) to make something similar to QuakeC code.

This is my script for the scout.
C:
<div class="c" id="{CB}" style="font-family: monospace;"><ol>uint64 Scout_Create() { 

    <span style="color: #993333;">const uint64 self = AddMeshSceneNode( "models/scout.obj" );

    SetMaterialTexture( self, <span style="color: #cc66cc;">0, "textures/scout_flat.tga" );

    SetMaterialTexture( self, <span style="color: #cc66cc;">1, "textures/scout_bloom.tga" );

    SetMaterialType( self, "solid" );

    SetScale( self, vec3( <span style="color: #cc66cc;">0.25f, <span style="color: #cc66cc;">0.25f, <span style="color: #cc66cc;">0.25f ) );

    

    <span style="color: #b1b100;">return self;

}

 

<span style="color: #993333;">void Scout_Update() {

    RotateByDegree( self, vec3( <span style="color: #cc66cc;">45.0f, <span style="color: #cc66cc;">45.0f, <span style="color: #cc66cc;">45.0f ) );

}

 

<span style="color: #993333;">void Scout_Drop() {

    

}

 
Simply put, when you add an object to the map you can give it a script, in the scout's case I gave them all the script "Scout".

You can tell that the _Create() function is what actually defines the graphics, this is a step away from my resource structure I used before. Having the _Create() function do the graphical setup eases how much data needs to be entered into the map editor to get an item onto the scene.

Each frame the object's _Update() function will be called, where self will always be set to the reference of the object on the scene (Read only, too), self in the future will contain some object properties that are exposed to the script side of things.

_Drop() is always called when the map unloads, the scripter does not need to worry about cleaning up resources, this is only here in case they want to do some custom stuff at the map end stage, perhaps save a chest into memory that hasn't been opened so it can be restored on _Create()?

The use of "self" here will look wrong to a lot of people, the correct usage would be to create an entire object for the "things" on the map where I can do self.RotateByDegree(), however I think that introducing the OOP approach to scripting might cause some people to go crazy with what they write, if anyone disagrees with me then speak up and I'll swap it over to the traditional OOP method.

Now I'm adding in input reading in the script side so I can move a "player" object around on the map.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top