This post is about David's MININIM playtest of the standard legacy level set.
David wrote:As for performance, it eats 11-15% of CPU in windowed mode, and 25-30% in fullscreen mode.
What multi-room resolution were you using? 2x2? Albeit very optmized, rendering is the most demanding task in MININIM, and in most games I suppose. Therefore, having 4 rooms rendered on screen is almost like having 4 instances of MININIM in single room mode (well that's an overstatement, but just to give you an idea). In my machine, MININIM windowed (640x400), single-room, consumes about 4% of one i3's core.
In my virtual Windows machine, under the same conditions, MININIM consumes 5%-15% of one virtual CPU core. Anyway, I have the feeling that in Windows things are slower for some reason. That's not MININIM's fault though. That's Allegro department.
I have only Windows running in virtual machines and that's not reliable to do a serious assessment about performance.
David wrote:I can't avoid harm from a landing loose floor by crouching. I suppose this is intended.
Indeed, this is intended.
David wrote:The prince can climb up much faster after grabbing.
That's good. Right?
David wrote:It can be a bit surprising when the view changes to scroll a guard into view.
To remedy this situation, at least partially, specially for high multi-room resolutions, I implemented the room selector marks (those rectangles red and green surrounding rooms after automatic scrolling).
David wrote:When a guard has only 1 HP, that HP should blink. Like it already does for the prince.
Done. Thanks for reporting!
When the skeleton falls, it screams like the prince!
I'm glad you like it.
David wrote:I see (hear) that multiple sound effects can play at the same time. For example, gate closing + exit opening. Or slow-fall music + other sounds.
Yep, Allegro allows me to do that. By the way, why that's not the case for SDLPoP?
David wrote:Guards will follow the prince if they can reach him by falling later. For example, the orange guard on level 4, if the prince goes to the nearby potion. Or the yellow guard on level 10. That one was quite annoying, as the gate (where he came from) closed while I was fighting him.
In MININIM, AI is in general smarter than in the original game. In my experience that's more challenging and funnier to play.
David wrote:It's not so easy to defeat a cornered guard.
This no-auto-sword-drawing is good when I have to sneak behind a guard who's not looking.
I'm glad you like it. The kid draws the sword automatically if in fight range, though. In that case he takes care of keeping it at the end of the fight as well. I think that's the perfect balance for the "to auto or not to auto" draw sword dillema that caused some discussions in earlier versions of MININIM. That's proof that the answer to some questions can only be achieved given enough time and experience.
David wrote:I get to see the mirror appearing immediately (with music) when the exit fully opens.
That's because it uses a multi-room generalization of the original concept, that's the mirror appears as soon as its room is visible in multi-room visualization. This is true for other special events as well, like the mouse in level 8.
David wrote:I tried to stab the shadow on level 5, but I can't...
That's because the shadow is created immune to sword hits in that level. After all, you are not supposed to be able to kill him there, because he appears later on. However, your surprise is an indicator to me that this isn't the behavior for the original game. If that's the case I may want to implement the legacy behavior, because that's about legacy special events.
By the way, you can drink the potion before the shadow if you use MININIM's jump turn movement to avoid pressing the door's opening floor.
David wrote:It was interesting to fight against two guards at the same time on level 5...
I'm glad you like it. This opens interesting new possibilities for MININIM native level sets that support multiple guards in one single room.
David wrote:I see you put spikes behind the un-openable gate on level 5.
Not directly. The thing is that in MININIM (unlike the original game) there is no room linked to nowhere. Thus normal rooms are delimited by room 0, a room linked to itself from every direction. This makes a level in MININIM finite without boundaries, closed behind itself, curved onto a higher (internally inacessible) dimension.
As room 0 is a room in which every construction is a wall, it would look weird to let nothing above room 0 from other room's perspective. Therefore MININIM ensures this doesn't happen by fixing levels on-the-fly (putting spikes there).
David wrote:Guards seem to be tougher...
That's because the fight system is quite different from the original game. Said that, for legacy levels, guards' skills are the nearest they can be to the legacy ones.
David wrote:And they stab me when I'm trying to run away!
It's worth noting that the kid can't keep his sword and avoid fight if he is in fight range. This forces the player to stab the guard to push him away and activate his refraction time, so the kid can get space and time to keep his sword and run away.
David wrote:The fat guard can scream, too!
In MININIM, everybody screams, except for the princess and the mouse (yet).
David wrote:At the end of level 6, it's a bit scary/confusing to see all those spikes in the pit...
I've described above why that's so. I may want to consider implementing the legacy rendering behavior for MININIM's legacy semantics. Could you describe the rules SDLPoP use to draw the four boundaries of rooms linked to nowhere?
Some attributes of MININIM's rendering sub-engine may make this task a little bit challenging because of exceptional conditions, like the partial view of rooms below each visible room, present even in single room mode (where in the original game there is just a black band). Right now, thinking a little bit about it, it seems, rendering like the original game will be disruptive of true physical representation, specially regarding multi-room view. I'll have to consider it more comprehensively to be sure, though.
David wrote:The Manual seems somewhat outdated. It does not mention multi-room modes, for example.
That's an understatement. Actually, it's very outdated.
MININIM's homepage wrote:
Its [MININIM's] user’s manual (in PDF format) is bundled in the hope that it might be useful, but keep in mind that it lags far behind the current development stage of MININIM and thus doesn’t describe several features thereof accurately or at all. The author plans to update MININIM’s documentation in a definitive manner when MININIM reaches reasonable feature-set stability. In case you’d like to help in speeding up this process by maintaining its documentation, you’re very welcome! Please, contact the MININIM community at its forum.
I wish I had people helping me with that.
David wrote:Sometimes the display does not follow the prince after I used Shift+H/J/U/N.
That's expected, because you moved the current room selection (the one with a temporary red rectangle around it) away from the kid. Therefore, if the kid changes rooms the camera should not
automatically follow him, because the engine presumes you are interested in another room. The camera only starts to follow him again when he meets the currently selected room (or the converse). This is useful if you want to view something else while a replay is executing, for instance. The key HOME changes the currently selected room to the kid's one and centralizes the multi-room visualization, while SHIFT+HOME just centralizes the multi-room visualization for the currently selected room.
David wrote:Okay, it seems that regular guards scream, too. (Level 7 purple guard)
I told you!
David wrote:The first guard of level 8 seems to be quite easy. I just pressed left and shift and I defeated him... He's too inactive, perhaps?
That's because of how MININIM handles fight mechanics. That guard has however the same nominal skills of his legacy counterpart in the original game. For instance, his essential characteristic of never attacking is preserved. Of course, if that was a native MININIM level set, that guard's skill would probably be higher to make the fight more challenging.
It's worth noting that in MININIM's native level format you can fine tune each skill attribute for each individual guard.
David wrote:Hey, this works for all guards?! (Except Jaffar, because he immediately strikes back.)
I don't think so. If you aren't careful enough they will stab you back. Of course, the likelihood of that happening depends on the particular guard's skills.
David wrote:Chomper timings seem to be different. For example, the twin chompers after the rightmost guard chomped together.
They certainly are. That didn't prove to be a problem for compatibility with legacy mods yet, though. How does SDLPoP handles chomper timings? Sequentially? In MININIM they are randomly (modulo position) timed.
David wrote:When I climb up from a guard's view, he stays active until I do something else. Example: The orange guard on level 8.
Actually he stays active (or vigilant, in MININIM's jargon) for just a few seconds after you get out of his sight, whatever you do.
It was funny to see the mouse appear in the other room, out of nowhere...
Fortunately, in MININIM, we aren't subject to the law of conservation of energy
David wrote:The flip potion has yellow bubbles.
Yeah, to distinguish it from the float one. The standard item specification
considers graphical representation of items implementation-dependent. As a related note I plan to make MININIM compliant with that specification. This will probably allow MININIM to use every PoP 1 item conceived to date (and virtually infinitely many more).
David wrote:At the flip potion, I could break the two loose floors at the same time, the prince fell down, and it seems he didn't lose any HP?
The only way I know how to make him avoid suffering any harm on that part is to vertically jump, facing the right at the very edge of the base floor, in order to release both loose floors at once, and then immediately perform a falling turn and hanging on the walled floor while both loose floors are falling (alternatively climbing at the same time).
David wrote:I think the prince fell into the wall near the second flip potion. After you climb down where the loose floor was, crouch twice, and do a standing jump.
That's the same problem (regarding diagonal collision) I talked to Norbert about in respect to Prince of Wateria mod. Fortunately, this had been fixed before I got to your report. I'm constantly fixing such physics-related remaining bugs.
David wrote:Shift does not work with numpad 4/6 if Num Lock is on!
Works fine for me, under GNU/Linux and (virtual) Windows.
David wrote:What!? A guard can survive a two-row drop!? He loses only 1 HP. Example: Last guard on level 9. Or the purple guard on level 10.
If the kid can, why guards shouldn't?
David wrote:But loose floors hurt them too!
As I said, fair competition, same rules for all.
David wrote:Ctrl+G shows only *.sav files, but Ctrl+L shows all files. Also, Ctrl+G does not automatically add the .sav extension.
For the next release:
- Save files (actually configuration files in general) will have the extension "mcf"
- All load dialogs will only show valid files
- All save dialogs will hint the correct extension
For reference, see here
David wrote:On level 13, the exit opens immediately when Jaffar dies. No need to change rooms.
Hopefully that won't cause any incompatibility with legacy mods.
David wrote:Level 14 is oddly blue...
That's because it's night when the kid reaches the top of princess' tower. Do you have documentation on the palace drawing algorithm for that level used by version 1.3 of the original game? I may consider implementing it instead.
David wrote:And it's odd to see the empty room before meeting the princess...
I agree. I still don't understand why Jordan Mechner didn't consider MININIM's multi-room feature while designing that level.__
I'd try to ask him, but he probably won't answer my emails.
David wrote:Is there no Hall of Fame? Or it just didn't appear because I interrupted the ending music?
No, there isn't. I plan to implement it eventually.
Thank you for testing MININIM thoroughly and taking the time to provide useful feedback. That's very much appreciated.