BGMC21 CaveX16 (formerly Crystal Miners)

Works at 60Fps, only time it was lower was in the original opening of the game, and no drops at all


(And because I’m lazy here is a pic of my computers stats)

@superflip:
It looks to be an issue with the way I am using the logger module. Apparently in windows the python instance isn’t unloading the logging module at the end of the game. I’ve put in a try-except to catch it, as it has no real impact on the game (just means the log file will grow each consecutive playthrough).

@everyone
I’m glad things seem to be running OK. I’ll still keep trying to get the performance up.

Uh, I think the light towers may be a little big:



But buying buildings is now implemented.

Uh, I think the light towers may be a little big:

Super Mario brothers 3 world 4 lights =)

Timelapse for today:

I’ll probably do some more modelling this evening. Hopefully I can do another unit or two.

Progress today? Mining gives you resources. You can buy buildings. There are crystals.

Screenshot:


Blends:
BGMC21 Crystal Miners.zip (1.24 MB)

I will get rid of the outlines around things at some point.

Runs very well, no signs of lag.
You need to make some little miners mine the clicked terrain part rather than just removing it.
Also I don’t understand what to do with crystals.
Oh, and you could make the lamps be really lamps:D

I’m getting there adrians. What do you think the machine on the front page is for. The clicking is just to test the implmentation before I do the units.

The light towers are now lamps, with a lighting manager of course so you can have lots and it not be too noticable. Of course, if you put a whole heap next to each other, you will notice.



And there is a building where you start and where units spawn:

Video of the state at the end of today:

Nice! You may want to hide the crystals while they’re not lit, though.

I want the player to know where they are because otherwise there is a lot of mining the player will have to do to find them. I’m quite happy with them being on the minimap at this stage.
Making the change is trivial (a material setting on the crystal), so I may well try it duing play-testing at some stage.

Prospective Timeline:
Day1: Map Generation and mining
Day2: Buildings and economy
Day3: Mining units that mine, pathfinding, resource vehicle
Day4: Menus, Sounds and ambiance
Day5: Implmenting a win condition
Day 6-7: Playtesting/catchup if got behind. Optimization and bughunting.

Unfortunately I’ve started to notice that the LibLoad bugs are rearing their heads. Every so often, the game crashes. So far it’s only when you’re closing/quitting every 30-40th time, but if my experience from many years ago holds true, this will gradually end up with it crashing rather regularly.

It worked fine with me. Performance was 60fps, with rasterizer being the biggest hog at around 15ms. That’s pretty high, people without a good graphics card are going to suffer.

In the past I added a “no-nodes” option for people with crappy cards, it looked terrible, but that’s better than running 2-5fps.

I wouldn’t worry to much about lib load crashes. I’ve seen similar crashes before with render to texture, things like that happen a lot when you’re testing repeatedly in the embedded engine, but rarely crop up for someone playing the stand alone, or just once or twice in the embedded engine.

One thing I found worked well was to use a bpy script to rename all objects in my assets files to make sure there are definitely no shared names. If there’s a “lamp” in one and “lamp” in another, I don’t know but it seems like that could cause a problem. So I automatically added a prefix to each name “tiles_lamp” “tiles_lamp.0001” “truck_empty.045” etc…

Anyway, as a project grows there’s bound to be a chance of just random crashes related to the more complex systems like libload.

Oh wow nice work so far. It’s like a pimped up Lego Rock Raiders!

@smoking_mirror
I like the idea of a low graphics mode. It turns out that on my laptop, disabling ‘extra textures’ strips out normal maps and specular maps and makes the game run really well.


You may have something there about the naming. The instability started when I linked a mesh from one file to another. I’ll go through and separate it out and see if that fixes things.

@MrPutuLips:
That was one of the major inspirations when PPSKI and I were designing this game.

Level 1 miner stack:


You can spawn them in, but they don’t do much yet.

And they now drive around and can mine (At absurdly long distance):

Blend Files:
BGMC21 Day3 Unit Demo.zip (1.5 MB)

Hi,
I tried downloading and playing the Day 3 version, but it just sat at 0% and I got an error of

AttributeError: ‘module’ object has no attribute ‘IMB_BLEND_COPY’


Don’t know if this is something that I did wrong or a bug, but I just thought I’d pass it along. If you need any more info, just let me know. Hope it helps!
By the way, your game looks neat!

You’ll need a more recent version of blender. I’m using some relatively new stuff. I am developing this game with 2.77a

I’ve read the topic and watched the movies and… I dig it (pun intended :yes:)

Will there be a challenge, like a limited time frame or dangerous situations?

PATHFINDING!!! Thanks PPski for doing the hard work of actually understanding A* and punching it out in python.

Yes, I am behind the schedule I put out a few posts back. Units took a lot more time than I thought, and I’ve re-written the map from the … ground up … to make it a lot tidier and integrate with pathfinding/multiple resource types/other things. I think I still have a fair shot at completing it, it is only Tuesday.

@Meshmonkey:
I’m not sure yet. Currently the plan is you mine until you get enough crystal until you get enough energy to move the elevator to the next level (or build another elevator or something), but I have not (As of yet), planned any challenges for along the way. Getting it done in time and stable will be a big enough challenge.
If you have any good ideas, I’m keen to hear them.
I don’t want to introduce military units (ruling out combat), as that will make the project an order of magnitude more complex.


On a side note, there are now 2428 lines of code. This is made up of 188 functions for an average length of 12 lines per function. There are 153 if statements, 85 for loops and 8 while loops (gasp, I wonder how many have iteration limits? 8 bugs in the waiting…).
This project is now the third biggest project I have undertaken in BGE in terms of lines of code, and I would rate it as the second most complex.

File size including textures, models, code etc. is now up to a new record of … 2.1mb. Yeah. Unfortunately that will go up when I start adding sounds. I have no idea how to do procedural sound generation in BGE, so I’m expecting at least 4-5mb of sounds

WOOOOOW, that is so cool!