Some feedback
Hi. I just tried out version 0.13 of FLARE and must say I'm impressed. This is the kind of open-source project I've been hoping for. The engine looks very promising and it's great to see that content is considered to be such an important ingredient.
Anyway, I played the demo for a while and found some issues regarding the user experience I'd like to point out:
- Problem: Enemies can be hard to spot if they are behind something.
Solution: Make covered enemies visible in some way or other.
- Problem: Aiming is hard and occasionally confusing.
Solution: Give visual feedback when the mouse hovers over an enemy.
- Problem: It's not obvious which objects on the map are interactive.
Solution: Give visual feedback when the mouse hovers over an interactive object (like in 2).
The concept of 2 and 3 also applies to all kinds of other things (such as items on the map).
Also some other suggestions:
- Support (at least) three mouse buttons. It's realistic to assume that more than 99% of your gamers have at least three mouse buttons and having that third mouse slot would make a big difference.
- Aim for 60fps. If you pre-render for 60fps it's easy to just skip every other frame. It would be cool if you could adjust the engine to scale with the frame rate (i.e. not slow down when the frame rate drops). I might be able to help you with the programming for this if you're interested.
That's it for now. I might post some more stuff later on.
I look forward to watching this project develop.
I would not say problem 1 needs a solution, it's a feature, it's the responsibility of the map-designer to design it so it's doable, but a map may contain surprises.
Yeah, it depends what the developer wants really. But I think a proper line of sight style implementation of the hide and seek features would make more sense. That way monsters around the corner would always be invisible, regardless of the direction they are coming from.
These are great suggestions.
The mouse-over highlight is something I definitely want to do for enemies and map objects. With the current SDL libraries I'm using, I don't have an easy way to e.g. blit a sprite brighter in real time. I could have regular and bright versions of each enemy and tile, but that would take up a lot more memory. Maybe I need to just bite the bullet and include something like sdl_gfx (which might also allow per-tile lighting).
At least an enemy menu appears when mousing over an enemy. I can probably add a tooltip when mousing over an interactable map object (sorta like how loot is shown now).
I don't have a great solution yet in mind for enemies behind walls. I sometimes use it for ambushes. Maybe that's just cheap and frustrating though. I could show a faded/dithered enemy when he is clipped behind a wall, as in your example. Currently I'm not doing any other masking like that though, and it might involve needing sdl_gfx as well.
I do want to add optional floating combat text. Should be easy once I take the time.
I think the engine would handle 60fps. I'll consider converting all the animation data to millisecond-based instead of frame-based, I just don't know I'd be gaining enough by doing that. E.g. the hero walk animation will always be 8 frames, whether it's displayed at 30fps or 60fps. If I were using e.g. vector or 3D art it would be a different story.
Regarding enemies behind walls, it seems to me that if the character would be able to see it, the player should be able to see it as well.