Release Barony: Blessed Addition

@ptitSeb : you seem to be right about GL speed being the limiting factor.

Here is the output of "sudo perf top" on my Rebirth @ 825 MHz, at the entrance of level 2 (~5 FPS):
9.67% [.] 0x3ddc
9.15% barony [.] checkTileForEntity(int, in
8.75% barony [.] checkObstacle(long, long,
4.29% barony [.] actMonster(Entity*)
3.70% [.] memset
3.64% barony [.] gameLogic()
2.73% [.] memcpy
2.71% perf [.] 0x34570
2.66% [.] 0x67f14
2.33% [.] Mix_Neon
2.06% [.] draw_renderlist
1.82% barony [.] getItemsOnTile(int, int, l
1.50% barony [.] Entity::getStats()
1.49% [.] MixSource
1.31% barony [.] _Z12barony_clearffP6Entity
1.19% [.] snd_pcm_lfloat_convert_flo
1.19% [unknown] [.] 0xffff0fc4
1.17% [.] mdct_backward
1.06% [.] 0x26ee4
1.03% barony [.] actTrapPermanent(Entity*)

Those Entity entries that used to eat so much resources are much lighter now, thanks :)

@ptitSeb EDIT: I'll try to experiment with LIBGL settings in your run script, see if it changes anything.

EDIT 2: @ptitSeb : I tried almost every LIBGL options, but I couldn't get even a single extra FPS out of them :(

Cheers, Magic Sam
Last edited:
I have updated again the beta PND.

This thime, I have found that the minimap was creatings hundreds (really!) of draw command. I batched that.

The result is now much better, and frame rates mostly doubled (at least) on my side :D

More feedback is welcome :)
@ptitSeb : I confirm, this build is much better :)

~20 FPS @ 1 GHz before entering the dungeon, a little less when you are inside, but it's definitely playable now !

Thank you very much :D

Cheers, Magic Sam
Now, I would be interested in knowing if that build is stable.

If yes, I'll push some of the changes upstream (the hash map and minimap optim).
Hi all :)

@ptitSeb : I'll play your new Barony build some more and report here any stability issue I may find ASAP.

Cheers, Magic Sam
Finally found some minutes to test.
First impression is the game is more fast with your latest changes (all test @600 Mhz), but i noted a small grafx bug, this "dark grey cubes" (maybe libGL related ) as you can see on the shots attached:


Mmm, ok. May be related to some tentative optimization. Not sure those optims are worth it anyway. I'll probably go back on that one unless I found an obvious bug causing this.
Hi all :)

@ptitSeb : I played Barony (that's a great game, I love the music) some more this evening, and...

- I noticed some kind of white screen when you go down one level. It lasts only for a few seconds.
- The mouse cursor is way too small IMHO (a mere dot). Could you please make it a bit larger ?
- Gamma is not always restored to default upon exit.

The port looks pretty stable, no crashes so far.

Cheers, Magic Sam
unfortunaly i do not own the Game.
Is there any Demoversion for testing?
I found a Barony Demoversion but this Version did not work because Problems with Languages Files.
I have update the beta PND of Barony.

The cursor is bit larger (if you still find it to small, look at the file appdata/barony/game/cross.png, that's the new cursor. Give me a bigger one and I'll change it in the PND).

I think most issue you are seeing are caused by the optimisation I'm trying to code in gl4es. I have updated the version. I didn't witness any prblem plyaing the game (but the optim is still not bugfree, as I have seen some issue while testing Eternal Lands).
Hi all :)

@ptitSeb: your new version works well, thank you very much !

I noticed some performance drop (FPS < 10) in level 2, when the Minotaur appears (its model is quite large).

Could you please have a look at it ?

Cheers, Magic Sam
Mmm, I'll check, but I don't think the model is the issue (models are a bit long to load, but they are simplified once loaded, and drawn with a single command). The issue is probably in the "logic" of the Minotaur, rather then the drawing. I may have other optim ideas but not sure yet, I have to dig a bit more.
@ptitSeb: I agree with you about the logic issue. I had similar performance drops in level 1, when ~6 big spiders were trapped together in a small room, or in level 2 when several wizards from the Zap brigade tried to help me defeat the Minotaur.

Cheers, Magic Sam
Blimey, logic slowness in a rougelike? What the hell are they doing?
It's more an Action RPG than a simple roguelike. There are many creatures and guys in the level, doing stuffs, helping you, or trying to kill you...
Last edited:
Hi all !

I "almost" survived the Minotaur, thanks to a blessed ring of teleportation... ;)

Cheers, Magic Sam
Hi all :)

I really like this game ! Thanks again @ptitSeb for porting it to the Pandora !

Did you have time to work on some "logic" optimizations lately ?

Cheers, Magic Sam
Hi all :)

I really like this game ! Thanks again @ptitSeb for porting it to the Pandora !

Did you have time to work on some "logic" optimizations lately ?

Cheers, Magic Sam
I have started, but it's not finished, so I don't know yet if it will help or not. (also most of the optims I have done are pushed upstream :) ).
@ptitSeb : yeah, I checked their github account this morning and noticed all your PR were being accepted upstream :) Congatulations ! They will prove beneficial to a larger number of players, not only Pandorians.

Cheers, Magic Sam

P.S: if you need a beta tester for those "logic" optimizations, you know where to find me ;)

P.S.2: do all entities share the same logic code ? Or is there one logic code per entity ?