Page 1 of 1 in beta

Posted: Mon Nov 23, 2015 2:53 pm
by Spiky Caterpillar
This is a massive technical overhaul that took far too long to get to a presentable state. Basically, I've spent the past few weeks porting Magical Diary to Ren'Py 6.99.7. (And porting 6.99.7 to Magical Diary...)

The short changelog:
- Works on El Capitan.
- OpenGL works a LOT better in the new engine.
- May fix some problems related to non-latin characters in usernames in Windows.
- Assorted minor dungeon bugs fixed.
- Controller support appears broken (at least on my computer)

This drops support for older versions of MacOS - you will need at least Snow Leopard to play the game. (Sorry, I *know* your PPC Macs are still perfectly good computers and I WANT to support them - but Apple keeps breaking APIs, so I can't support both old and new Macs. should still work on PPCs)

Getting the update is a bit fiddly, since the engine changes require updater changes - so:

You may want to back up the game before starting, this is a BIG change and may change what the system's compatible with.

Update to It will tell you that it needs to install first; let it. Then upgrade again to

If you're on Windows and installed to a UAC-protected directory, after the update completes the game will restart and tell you that your license key was rejected. It's lying, just close it.

Start it again, and you should be in the shiny new current version.

The long changelog:


Ground Spell actually works. Freeze can cause the Hooded Figure's spells to fizzle. It should be more clear when Sticky Feet on monsters wears off. The magic-resistant doors now resist a few more spells. Disrupting someone else's attempt to teleport you should show the right anim. The black and white magic casting effects have been altered slightly. Pushing objects somewhere where they could only wind up facing one way should now leave them facing the right way. Inspection on things that are not objects now gives a useful error. Inspection on the Manus should work as intended now.

Widescreen/4:3 switching has been significantly reworked (the new GL code in 6.99.7 is harder for me to smoothly hook into - actually working on my video cards makes up for that, though.). The software renderer will now default to using the desktop resolution (... because that preserves aspect ratio) in fullscreen mode.

Tracebacks and license keys can now be encrypted in transit. (This is still experimental, let me know if anything breaks.)

'{' characters in tracebacks no longer cause a crash in the crash handler.
Crashy screens should no longer crash the crash handler.
Crash casting Silence (don't remember the circumstances) fixed.
Crash when the hooded figure pushes you fixed.
Possible crash Communicating fixed.
Non-Latin characters in your username in Windows should no longer cause crashes when the game tries to access load/save/persistent. (Note: the game still cannot run inside a unicode directory on Windows if that directory contains glyphs that cannot be represented in the Windows ANSI API. Setting your locale in Windows to one that contains all the glyphs in the path to the game should let it start)

Now gain 5 cute points when Donald says "You're cute when you're righteous"
The engine upgrade required a rewrite a lot of the magic effects - Flame, Spirit Sight at the Dark Dance, Hodag claw anim, the New Years bonfire, etc. Pretty much everything that used blending has been poked at.
Faces 3 and 4 have been tweaked slightly, which should make certain expressions look better.
A few places where particularly large animations would have odd seams in widescreen mode have been leaned up.
I finally figured out why the other hooded figure jumps up in the middle of his animation. (Minor bug that's been nagging at me for YEARS and I could never figure it out...)
Rollback now stops autoplay/skip, since rolling back from a crash usually means you don't want to autoadvance right back into it. (This doesn't fix the indicator, though)
Given all the graphics-code changes, old saves may often display visual glitches for the first few lines. The glitching should fix itself the next time the game redraws the whole screen; however, if any old saves *crash*
or glitch terribly forever, I want to know about it.
It's easier to tell where you are when messing about with several hundred saves.
Now quit after upgrades.
Smarter tracking of ignored crashes and debugger use (so it'll be easier for me to tell which tracebacks indicate 'player broke the game with a hammer, probably not MY bug')
Various screens that allow hotkeys now use strings instead of keysyms. This makes them work more sensibly with non-qwerty keyboards.
Assorted typos and grammar errors fixed. (Mostly in the dungeon)

The game now has hooks for translation. If you're interested in translating it, post a request here and I'll go through and extract the actual translation data files for you. (Note that the default Ren'Py translation hooks are unlikely to work right, especially given the complexity of the dungeons. You'll want the translation data.)

The new Ren'Py console is a LOT nicer than the old python console I'd hacked in, so we're using it instead.

SmartInput()s (those input fields that let you have multiple text entry fields on screen at once) now handle arrow keys sensibly. I should probably post the code for 'em somewhere.

And, of course, tons of minor code rework, debug messages trimmed, new debug messages added, and little things adjusted in ways that should never show up at all.

Re: in beta

Posted: Mon Nov 23, 2015 2:58 pm
by Spiky Caterpillar
Other notes: If you cannot start the game to run the updater, pester Hanako for a new installer.

The beta will show up on Steam once I've re-integrated Steam achievement support.

Re: in beta

Posted: Wed Nov 25, 2015 12:33 pm
by Spiky Caterpillar
To the player on a Mac getting 'UpdateException: MacOS (10,6) or higher is required' crash - if you still can't update, can you post the output when you go to the Python console and run

Code: Select all

(I think there's a bug in my MacOS version detection, but I don't have a Snow Leopard machine to check on)

Re: in beta

Posted: Thu Nov 26, 2015 4:19 pm
by Spiky Caterpillar
1.0.70 now in beta. Changes:

The yearbook no longer crashes. OOPS.

The game no longer crashes if you've ordered lots of valentines. Fixing it showed me that some diary entries weren't translatable - that has been fixed too. The same bug was also present in a few other places in the game and has been fixed - specifically, Truesight with multiple illusions (which I'm pretty sure can't happen), Shield triggering a secondary effect (which I'm pretty sure can), multiple nonsentient plants in a cell when entangling (which can't happen unless you're hacking the game), Awareness detecting multiple things (which I'm pretty sure can happen), and when certain old saves are loaded.

Game controllers should now work in Linux.

The game still incorrectly reports that there are no controllers installed. If you're using a controller, you should test to see if it works (expected behaviour: it should work, even though the prefs claim it doesn't exist.).

Encryption does not work properly on OS X. (EDIT: I left the not out the first time.)

Video settings are fiddly. (They'll be a little less fiddly in the next version; not sure if I'll be able to fix all of it though)

The caterpillar is working on production code while asleep. This is not a bug, caterpillars are lepidoptera.

Re: in beta

Posted: Thu Nov 26, 2015 7:57 pm
by nightshadengale
I'm sure I must be missing something obvious, but how do I update the game? I figured there would be a button on the Options page or something, but I don't see one. (If it matters, I have the non-Steam version, and it says it's at if I click the 'Python console" option.)

Re: in beta

Posted: Thu Nov 26, 2015 8:34 pm
by hanako
Since we're not supposed to have the updater on the Steam version, if you've previously run the Steam version there may be a flag set on your computer which is preventing the updater from showing up on the options page.

There are several ways around this but it depends on how much you want to poke around in your computer.

If you've NEVER played the Steam version or the Steam demo on your computer then I'm not sure why it's not showing up.

Re: in beta

Posted: Fri Nov 27, 2015 1:36 am
by Spiky Caterpillar
To enable the updater if you've run the Steam version, go to the Python console (a button to access it should be on the options screen and/or the video settings screen) and run

Code: Select all


Re: in beta

Posted: Sat Nov 28, 2015 4:34 am
by Gamer
There's an 'unimplemented' detention if you decide to intentionally fail your sixth exam by injuring yourself. Just wanted to let you know.

Re: in beta

Posted: Sat Nov 28, 2015 12:08 pm
by hanako
I have noticed, but this game has been content-complete for years so I'm not going to try and fight my way back into that mindset to write an extra scene for a very rare occurrence that you have to be trying to find. :) If there were a scene already written and it just wasn't showing up, we'd fix it, but no new scenes now, it's just been too long. Sorry...

(It's fine to report it, obviously! It's just not a good use of my time to try and get back to being Mary Sue enough to write it.)

Re: in beta

Posted: Sat Nov 28, 2015 8:11 pm
by Gamer
That's a shame! I just went back and played through the game again after finding myself with some extra time on my hands and I decided to try a 'Get the most detentions in a year without getting expelled' challenge.

1.0.73 changelog

Posted: Wed Dec 09, 2015 4:21 am
by Spiky Caterpillar
Crash fixes:
* No longer crashes after setting the price for valentines.
* No longer crashes after you refuse to give Damien your soul when using the GL renderer on Windows.
* No longer crashes when you input your license key.
* A crash in video settings (complaining that physical_size has no __getitem__) fixed.
* A crash in after_load_displayed_images_fixup() fixed.
* A crash analysing objects with graffiti on them fixed.

Other changes:
* Steam version no longer demands a license key on Windows.
* Moved to (slightly hacked) Ren'Py 6.99.8 prerelease.
* Controllers screen no longer insists that controllers don't exist on X11.
* Video mode prefs improved - snapping to 1024x768 disables widescreen; widescreen mode in GL no longer causes the window to shrink a little each time you open the game; no longer reports multiple conflicting options as selected; Angle renderer actually selectable.
* Trying to Push non-pushable objects now deducts mana.
* Trying to Force Push non-pushable objects deducts mana and gives the same failure text as Push Object.
* Grammar error trying to push doors fixed.
* You can now delete the currently selected save by pressing delete on the load or save screens.
* A graphical glitch on the options screen that caused gradiented rectangles around the volume and speed sliders in the GL renderer has been fixed.
* Entering the scheduler screen turns off skip mode.