Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
News Content Gallery About Donate Discord Contact
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Arthurian Legends - Witchaven-like medieval first-person slasher

toughasnails

Learned
Joined
Sep 20, 2021
Messages
441
Having an amount of enemies that would be reasonable in another engine would cause slowdown.
I haven't tried other game modes yet, but the campaign generally has limited enemy counts per map compared to other recent boomer shooter. I think it would be in 20s-40s for the most of first two episodes and most of the maps aren't exactly small.

It works well with game's combat and the enemies are p deadly and aggressive but what you said might mean that he couldn't really risk having larger monster counts even if he wanted.
 

Bad Sector

Arcane
Patron
Joined
Mar 25, 2012
Messages
1,735
Insert Title Here RPG Wokedex
Who the fuck uses OpenGL in 2021?

Many devs do (e.g. i do use it all the time). The issue isn't OpenGL, which can certainly do way more advanced graphics than the mix between Doom and Quake graphics this game has.

As you can see in this grab from running the game with MSI Afterburner it barely uses the CPU (7%) or GPU (10%):

LKGusB2.jpg


I decided to check out the game under a profiler i wrote recently (meant for profiling Free Pascal programs but it can be used with any executable - you just wont get any symbols, etc, just summaries from in which DLL or EXE time was spent on) and i noticed something:

1DF62Za.jpg


Most of the time is spent in AMD's OpenGL driver and MSVBVM60.DLL, which is the Visual Basic 6 runtime. Also some decent time is spent in the game's own executable.

So i decided to check out why is so much time spent there. I mean, ok, i had a hunch - too much time in the runtime itself (meaning not much time spent in the game's own executable) and too much time in the OpenGL driver sounds like the game is making a lot of calls. I loaded the Math001.dll (which is basically the engine) in Ghidra and i found some questionable calls (pretty much everything seems to go through a couple "draw primitive" calls), but to be sure that is the issue i also ran the game using APITrace and...

QShowlR.jpg


First of all, 61833 calls! That is a lot of calls (to give you an idea, one of the higher calls for Hedon is around 5500 and even Ion Fury does around 22000 or so calls - but Ion Fury also draws a crapton of stuff). More importantly many of these calls are redundant, e.g. it disables vertex attrib arrays right before enabling them again and resends data without need (e.g. that matrix uniform 5 is set to the same identity matrix over and over every few triangles it draws). Also all geometry drawn is sent anew instead of being stored (at least the static bits) to the GPU memory (Ion Fury for example does a lot of draw calls but level geometry is already stored on the GPU as a buffer) and A TON of these draw calls do not actually contribute to the final frame at all.

So basically that is the issue: the engine is making a ton of unnecessary draw calls, it doesn't reuse existing state and it always sends all geometry anew every time it needs to draw something. Writing a state manager and batching calls whose output wouldn't affect the final frame if they are reordered (e.g. all opaque zbuffered geometry can be easily reordered) should improve performance dramatically.

When i wrote Post Apocalyptic Petra's initial OpenGL backend i did it in the simplest way possible (which basically meant a crapton of calls per triangle - i didn't think much about since the game was originally software rendered anyway) and got around 100fps on my PC, though i didn't notice it initially. Once i noticed it, i thought to try and optimize it a bit (i had a brand new 165Hz monitor) since 100fps on a modern PC for barely PS1 graphics is eh, so i wrote a state tracker and batcher and even with AMD's suboptimal OpenGL Windows driver the performance jumped to ~2000 FPS. This took me an afternoon or so, though obviously the engine is very simple and i don't know what sort of functionality that 001 engine's renderer has. But regardless, this sort of functionality should improve performance a lot even for 2D games.
 

Tacgnol

Shitlord
Patron
Joined
Oct 12, 2010
Messages
1,870,218
Location
Pronouns: Shitlord/problematic
Codex 2016 - The Age of Grimoire Grab the Codex by the pussy RPG Wokedex Strap Yourselves In Shadorwun: Hong Kong Divinity: Original Sin 2 Pathfinder: Kingmaker
Might be worth you passing that info on to the dev Bad Sector

Might give him something more concrete to discuss with the engine devs.
 

Bad Sector

Arcane
Patron
Joined
Mar 25, 2012
Messages
1,735
Insert Title Here RPG Wokedex
Might be worth you passing that info on to the dev Bad Sector

Might give him something more concrete to discuss with the engine devs.

Yeah i posted a message on the Low FPS thread in the Steam forums where the developer has made a comment before so i hope he'll see it.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
This is just depressing :(

I really don't think we'll see an engine update with the scope needed to fix this.
 

The Decline

Arcane
Joined
Aug 24, 2009
Messages
5,273
Location
Everywhere
Seems odd that it doesn't happen to everyone. Mine averages around 70fps with dips to 60-55 in some places.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
Seems odd that it doesn't happen to everyone. Mine averages around 70fps with dips to 60-55 in some places.

This is what confuses me the most. There isn't enough difference in hardware to justify this sort of performance difference. My game ran at an average of under 30 fps, let's say something like 25 maybe.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
Made a discord account, shared Bad Sector 's post on the game's discord server, promptly deleted discord account.

The game is genuinely great and man, just look at this manual... Sad that the dev stuck with that crippled platform for so long and released on it, but even if there's slim hope for a fix, I thought I'd make sure this gets out there.

I've never felt so conflicted about a game in a long time. I love the content I've seen, even just the level and a half from the demo I played, before the framerate gave me a headache and my eyes started hurting too. It's just confusing that someone who cared enough to produce an oldschool manual and make such a fun game was also careless enough to not test sufficiently or get a clue what the engine was doing in terms of performance and keep making the game on that weird engine.
 

Tacgnol

Shitlord
Patron
Joined
Oct 12, 2010
Messages
1,870,218
Location
Pronouns: Shitlord/problematic
Codex 2016 - The Age of Grimoire Grab the Codex by the pussy RPG Wokedex Strap Yourselves In Shadorwun: Hong Kong Divinity: Original Sin 2 Pathfinder: Kingmaker
Seems odd that it doesn't happen to everyone. Mine averages around 70fps with dips to 60-55 in some places.

I also tend to get 80+, but there are other people on 3080s and high end intel CPUs who are getting around 60 only.

Very strange regardless.
 

lightbane

Arcane
Joined
Dec 27, 2008
Messages
8,977
Tried the demo, thankfully everything works fine. You know it's an old-school game when before starting, you get a classic-style menu to configure controls and such (which are not changeable in-game IIRC) and the game requires a reboot to start.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
Tried the demo, thankfully everything works fine. You know it's an old-school game when before starting, you get a classic-style menu to configure controls and such (which are not changeable in-game IIRC) and the game requires a reboot to start.

As someone who has the game running normally, can you post your full system specs, including OS version / 32-64 bit etc, please?

I'm going crazy trying to figure out how this works fine on some setups.
 

lightbane

Arcane
Joined
Dec 27, 2008
Messages
8,977
Well then, let me see... Note that I didn't play more than a bit of the first game, so perhaps I'm mistaken, but the test seemed to work fine.

Windows 7 Home Premium 64 bits
Intel R Core i7 7700 3,60GHZ with 24 GB RAM
NVIDIA GEFORCE GTX 1060

These should be enough, right?

Yeah, the whole thing was expensive, but it's a rig that lasted me for years, and will likely keep doing so for a while. Sadly, I'm afraid I'll have to switch to W10 because W7 is no longer compatible and the pressure to switch keeps growing.
 

The Decline

Arcane
Joined
Aug 24, 2009
Messages
5,273
Location
Everywhere
Tried the demo, thankfully everything works fine. You know it's an old-school game when before starting, you get a classic-style menu to configure controls and such (which are not changeable in-game IIRC) and the game requires a reboot to start.

As someone who has the game running normally, can you post your full system specs, including OS version / 32-64 bit etc, please?

I'm going crazy trying to figure out how this works fine on some setups.

Windows 10 64-bit
Ryzen 7 5800h
RTX 3070 Mobile
32gb 3200mhz Crucial Ram
NVME 500gb and 1tb

The resolution I'm running it at is 1280 x 800 scaled up to 2560 x 1600.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
Feels like everyone running it fine has really fat-ass CPUs, so it might have something to do with that. On the other hand, it doesn't even load up a single core/thread on my i5 fully, so I don't know what the hell.
 

toughasnails

Learned
Joined
Sep 20, 2021
Messages
441
This wasn't mentioned on the store page but the game actually has a New Game +. You carry over all the relics with permanent boosts you have found so far and all the equipment and gold you had at the end. And the difficulty is of course raised. There is also a merchant now that appears in one of the secret areas (?) in the first stage of each episode, that's where you spend the gold. I'm either missing it or he's in the one secret area I didn't manage to find so far. Or I misunderstood and he appears at the end of the stage.
 

Tacgnol

Shitlord
Patron
Joined
Oct 12, 2010
Messages
1,870,218
Location
Pronouns: Shitlord/problematic
Codex 2016 - The Age of Grimoire Grab the Codex by the pussy RPG Wokedex Strap Yourselves In Shadorwun: Hong Kong Divinity: Original Sin 2 Pathfinder: Kingmaker
Tried the demo, thankfully everything works fine. You know it's an old-school game when before starting, you get a classic-style menu to configure controls and such (which are not changeable in-game IIRC) and the game requires a reboot to start.

As someone who has the game running normally, can you post your full system specs, including OS version / 32-64 bit etc, please?

I'm going crazy trying to figure out how this works fine on some setups.

Windows 10 64 bit
Intel I7 10700k OC to 5.1ghz
32gb Ram
RTX 3080

Doubt it matters, but also running it on an NVME.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
The only thing I see as a common thread here is significantly higher single-core performance than what I have.

I guess the game idling and using just 8% of one fat i7 / ryzen 7 core can produce more frames than using one core from the 3.2 ghz i5 that I have.

Beyond that, it makes no sense whatsoever. Then again, I have a friend who is on a Xeon cpu, at 3.4 ghz of single-core performance and he still has 20-something fps so... I really don't fucking know.
 

Naveen

Arcane
Patron
Joined
Aug 23, 2015
Messages
1,092
This wasn't mentioned on the store page but the game actually has a New Game +. You carry over all the relics with permanent boosts you have found so far and all the equipment and gold you had at the end. And the difficulty is of course raised. There is also a merchant now that appears in one of the secret areas (?) in the first stage of each episode, that's where you spend the gold. I'm either missing it or he's in the one secret area I didn't manage to find so far. Or I misunderstood and he appears at the end of the stage.

He is near the beginning of the first level of each chapter. In the first chapter, he appears in the area at the back of your house, next to a secret (one of those you have to crawl to get in.) In the second chapter, he is to your right as soon as you start the map, behind the ¿stable? In the third chapter, he is in the first cemetery area with many tombstones, but actually inside a secret. You have to smash a wall to your left. He appears even if you are not playing in NG+ as long as you have beaten the game once. Also, even if it's your first run, you can see where he will appear because you might find an oddly placed empty chair next to a barrel in those places I have described.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
This wasn't mentioned on the store page but the game actually has a New Game +. You carry over all the relics with permanent boosts you have found so far and all the equipment and gold you had at the end. And the difficulty is of course raised. There is also a merchant now that appears in one of the secret areas (?) in the first stage of each episode, that's where you spend the gold. I'm either missing it or he's in the one secret area I didn't manage to find so far. Or I misunderstood and he appears at the end of the stage.

He is near the beginning of the first level of each chapter. In the first chapter, he appears in the area at the back of your house, next to a secret (one of those you have to crawl to get in.) In the second chapter, he is to your right as soon as you start the map, behind the ¿stable? In the third chapter, he is in the first cemetery area with many tombstones, but actually inside a secret. You have to smash a wall to your left. He appears even if you are not playing in NG+ as long as you have beaten the game once. Also, even if it's your first run, you can see where he will appear because you might find an oddly placed empty chair next to a barrel in those places I have described.

Ah, so that's what the chair behind the hero's house was! :D
 

toughasnails

Learned
Joined
Sep 20, 2021
Messages
441
He is near the beginning of the first level of each chapter. In the first chapter, he appears in the area at the back of your house, next to a secret (one of those you have to crawl to get in.) In the second chapter, he is to your right as soon as you start the map, behind the ¿stable? In the third chapter, he is in the first cemetery area with many tombstones, but actually inside a secret. You have to smash a wall to your left. He appears even if you are not playing in NG+ as long as you have beaten the game once. Also, even if it's your first run, you can see where he will appear because you might find an oddly placed empty chair next to a barrel in those places I have described.
Yeah, i've fund it eventually (thanks to yt, that's the same secret area I have missed in the first playthrough). I was hoping that he'll be selling the remaining relics but he seems to offer only the indestructible shield (which I couldn't afford) and various items.
 

Falksi

Arcane
Joined
Feb 14, 2017
Messages
8,810
Location
Nottingham
Really enjoying it so far myself too. No major performance issues, great feel to the combat, mint blend of humour and "realism".

It puts up a decent challenge too, you can't just waltz your way through willy-nilly.

Top work.
 

Curratum

Arcane
Joined
May 14, 2018
Messages
3,822
Really enjoying it so far myself too. No major performance issues, great feel to the combat, mint blend of humour and "realism".

It puts up a decent challenge too, you can't just waltz your way through willy-nilly.

Top work.

Are you on an NVidia GPU? Actually, what's your entire setup? I still can't comprehend how this thing runs fine for some people. Is there something wrong with how AMD gpus interpret certain OpenGL implementations, I just don't get it. :(
 

Falksi

Arcane
Joined
Feb 14, 2017
Messages
8,810
Location
Nottingham
Really enjoying it so far myself too. No major performance issues, great feel to the combat, mint blend of humour and "realism".

It puts up a decent challenge too, you can't just waltz your way through willy-nilly.

Top work.

Are you on an NVidia GPU? Actually, what's your entire setup? I still can't comprehend how this thing runs fine for some people. Is there something wrong with how AMD gpus interpret certain OpenGL implementations, I just don't get it. :(

Not sure of the exact spec coz I'm using a works PC at this house. I've not tried it yet on my own at my other one. It's on board graphics card though, and running Windows Vista, think 4M of RAM.

It struggles to run a lot of modern games, but is fine with this.
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Top Bottom