Mad Pierre Posted June 23, 2016 Posted June 23, 2016 A very cool idea overall! I was thinking of something along the lines. Can you publish any demo versions or whatever? If you're concerned about copyright, you can just use some CC-licensed stuff like Katawa Shoujo or at least Ren'Py example novel, "The Question". Where do you people discuss it? You've mentioned that you already work with some translation teams. Quote
tymmur Posted June 23, 2016 Posted June 23, 2016 7 hours ago, Scorp said: @mnakamura Nice. Any plans to support Mikan in Mikan engine ? If we aim at names like that, then why not add support for Musumaker? The main heroine is called Mikan. Spoiler It looks easy and fun to add support for right until you play long enough to encounter all the minigames. Quote
Mad Pierre Posted June 23, 2016 Posted June 23, 2016 13 minutes ago, tymmur said: If we aim at names like that, then why not add support for Musumaker? The main heroine is called Mikan. Reveal hidden contents It looks easy and fun to add support for right until you play long enough to encounter all the minigames. I believe it would be next to impossible to implement in a *generic* HTML-based engine. Without *lots* of additional programming. I'm looking at Nakamura's JSON format now — actually, there's nothing like "hot regions" there, or any possibility to interact with graphics at all => no buttons, no custom UIs, etc. And, as for counting stuff, there is obviously a Turing-complete functionality to do the counting (i.e. "var_set") and you can do conditional jumps, but there's no way you can output a variable anywhere - not to text dialogue, not to a image area, nothing. Lots of games would require that. At least implementing "maps" with clickable areas should be first priority. Quote
tymmur Posted June 23, 2016 Posted June 23, 2016 37 minutes ago, Mad Pierre said: I believe it would be next to impossible to implement in a *generic* HTML-based engine. Without *lots* of additional programming. It was a joke. It is using a custom engine and totally not worth it to even attempt to run in a browser. Even without the minigames, it would be a quite difficult task with animated sprites, a million conditional jumps and math on the variable, as in real math, not just counters or flags. On top of that it has random number generation, something I wouldn't expect to see in a generic VN reader. Quote
Scorp Posted June 23, 2016 Posted June 23, 2016 3 hours ago, Mad Pierre said: I believe it would be next to impossible to implement in a *generic* HTML-based engine. Without *lots* of additional programming. I'm looking at Nakamura's JSON format now — actually, there's nothing like "hot regions" there, or any possibility to interact with graphics at all => no buttons, no custom UIs, etc. And, as for counting stuff, there is obviously a Turing-complete functionality to do the counting (i.e. "var_set") and you can do conditional jumps, but there's no way you can output a variable anywhere - not to text dialogue, not to a image area, nothing. Lots of games would require that. At least implementing "maps" with clickable areas should be first priority. But Mikan engine is not a closed source, so that's the whole point - to implement more features and support more games, right? Quote
Mad Pierre Posted June 23, 2016 Posted June 23, 2016 30 minutes ago, Scorp said: But Mikan engine is not a closed source, so that's the whole point - to implement more features and support more games, right? Actually, I dunno. I've never ever seen that Cs'Ware before (or whatever they call themselves) — they run some open source engine? Kirikiri? Quote
Scorp Posted June 23, 2016 Posted June 23, 2016 20 minutes ago, Mad Pierre said: Actually, I dunno. I've never ever seen that Cs'Ware before (or whatever they call themselves) — they run some open source engine? Kirikiri? No, Mikan engine is that mnakamura HTML5 engine, he choosed that name, right? C's Ware's Mikan is closed source, of course (maybe it have some relation to Entis engine, but seems scenario script format is unique). He would have to hack VM bytecode, find out what each of them does and create a decompiler/converter to make it working with his engine. Quote
mnakamura Posted June 24, 2016 Author Posted June 24, 2016 (edited) 13 hours ago, Mad Pierre said: A very cool idea overall! I was thinking of something along the lines. Can you publish any demo versions or whatever? If you're concerned about copyright, you can just use some CC-licensed stuff like Katawa Shoujo or at least Ren'Py example novel, "The Question". Where do you people discuss it? You've mentioned that you already work with some translation teams. Indeed, it is illegal to post links to copyrighted content on this forum according to the rules. Katawa Shoujo is CC-NC-BY-ND, which is "no derivatives". I don't know if porting without change of contents would be considered derivative, but probably that's not a safe idea too. Actually, it's a good idea to find something free to make a distributable demo of. "The Question" might be a good idea, I'll need to check. There is no single "central" place for discussions (yet?), I discuss stuff with each team personally in a way they want it. That's forums, imageboards, e-mails, etc. Recently, Github project sprung up, that might be that "central" place you're looking for. 12 hours ago, Mad Pierre said: I'm looking at Nakamura's JSON format now — actually, there's nothing like "hot regions" there, or any possibility to interact with graphics at all => no buttons, no custom UIs, etc. And, as for counting stuff, there is obviously a Turing-complete functionality to do the counting (i.e. "var_set") and you can do conditional jumps, but there's no way you can output a variable anywhere - not to text dialogue, not to a image area, nothing. Lots of games would require that. At least implementing "maps" with clickable areas should be first priority. Yeah, I'm aware of that. However, I want this functionality to be portable and useful too, i.e. so it could work on devices without a mouse / touch screen like consoles. So we should be extra careful implementing it. And, yeah, we still need a VN that has map. I haven't found a good example yet. Any ideas? 12 hours ago, tymmur said: It was a joke. It is using a custom engine and totally not worth it to even attempt to run in a browser. Even without the minigames, it would be a quite difficult task with animated sprites, a million conditional jumps and math on the variable, as in real math, not just counters or flags. On top of that it has random number generation, something I wouldn't expect to see in a generic VN reader. "Real math" is not a problem (actually, it's not a problem with majority of engines I've seen), as well as "random" function in Mikan engine. But, yeah, it's exactly the point to keep Mikan engine high-level, without going GameMaker / Flash / Unity3D way. Edited June 24, 2016 by mnakamura Additional reply Quote
Mad Pierre Posted June 24, 2016 Posted June 24, 2016 11 hours ago, Scorp said: No, Mikan engine is that mnakamura HTML5 engine, he choosed that name, right? C's Ware's Mikan is closed source, of course (maybe it have some relation to Entis engine, but seems scenario script format is unique). He would have to hack VM bytecode, find out what each of them does and create a decompiler/converter to make it working with his engine. Damn, that already became confusing Judging from VNDB, Mikan is released in Windows era, so probably it shouldn't be too hard to run it in OllyDbg / IDA or something. It's not like debugging PC'98, DOS or PSP games — now that's the nightmare. Quote
Mad Pierre Posted June 24, 2016 Posted June 24, 2016 2 hours ago, mnakamura said: And, yeah, we still need a VN that has map. I haven't found a good example yet. Any ideas? https://vndb.org/g297 - help yourself Quote
mnakamura Posted June 24, 2016 Author Posted June 24, 2016 3 hours ago, Mad Pierre said: https://vndb.org/g297 - help yourself There are lots of them, that's for granted. However, if I check out the top, it's mostly RPGs with minor VN element (Monmusu, Sengoku Rance, Kamidori), no pure VNs. Given that I haven't even heard the names of ~70% of the top50 list by popularity, I honestly don't even know which to start checking. Any advices on popular VNs with maps on relatively widespread engines like krkr2, BGI, Ren'py? Quote
tymmur Posted June 24, 2016 Posted June 24, 2016 An example of map movement in a VN with no other non-VN elements would likely be Da Capo. I remember the English version having actual map locations to click on, not just a row of buttons like in the screenshots of the Japanese version. My guess is that it is somehow a placement of a png at (x,y), which then works as a button and the VN script has a "read button click" command, but it would be hard to tell for sure without actually examining the script. Quote
mnakamura Posted June 24, 2016 Author Posted June 24, 2016 1 minute ago, tymmur said: An example of map movement in a VN with no other non-VN elements would likely be Da Capo. I remember the English version having actual map locations to click on, not just a row of buttons like in the screenshots of the Japanese version. My guess is that it is somehow a placement of a png at (x,y), which then works as a button and the VN script has a "read button click" command, but it would be hard to tell for sure without actually examining the script. What engine does it run? Could you check? Quote
Mad Pierre Posted June 24, 2016 Posted June 24, 2016 I've submitted pull request that adds colorisation of character text if specified in novel. Please kindly merge. Quote
Scorp Posted June 24, 2016 Posted June 24, 2016 12 hours ago, mnakamura said: And, yeah, we still need a VN that has map. I haven't found a good example yet. Any ideas? Nocturnal Illusion (it runs on an engine which was reversed in VILE interpreter http://vilevn.git.sourceforge.net/git/gitweb.cgi?p=vilevn/vilevn;a=tree), Divi-Dead (I do not remember, but I think in github you can find easily engine reversed for Squirrel or like that. Or you can read my script extracted/reversed version, if this could be of any help, that's quite evident from it how maps were done ). I have a bunch of krkr2 VNs with map (like KnS, Fate HA), but I doubt they are good example. Quote
Mad Pierre Posted June 24, 2016 Posted June 24, 2016 5 minutes ago, Scorp said: Nocturnal Illusion (it runs on an engine which was reversed in VILE interpreter http://vilevn.git.sourceforge.net/git/gitweb.cgi?p=vilevn/vilevn;a=tree). I have a bunch of krkr2 VNs with map (like KnS, Fate HA), but I doubt they are good example. That's exactly why I want to help this guy: Given that all the reversing is done, it should be more or less trivial to write a converter. Quote
Scorp Posted June 24, 2016 Posted June 24, 2016 Oh. You know, I can do what he want for original version in no time. So no need to port. Quote
Mad Pierre Posted June 24, 2016 Posted June 24, 2016 1 minute ago, Scorp said: Oh. You know, I can do what he want for original version in no time. So no need to port. What exactly do you mean by "original version"? Windows exe from '98? Good luck running it on any modern OS. ViLE? It has a broken build and the project is basically dead. No docs, no nothing, written in really obscure C++. My best bet is that nobody will risk to raise it from the dead. Quote
mnakamura Posted June 24, 2016 Author Posted June 24, 2016 Hey, @Scorp I've spent a couple of hours on it yesterday (mostly figuring out where to get it and what ancient OS would I need to run it), here's what I've got as a disassembly of the first scene: http://pastebin.com/V7gvbCka Nothing too bad, given that the engine is very dated and seems to lack most of fancy animations, transitions, etc. It seems that even sprites support is very simple - I haven't yet encountered a situation with 2 sprites on screen. There would be a problem with sounds and music streams, as they are in cryptic beginning-of-00s format - that, in turn, probably would need reversing sound stream compression algorithms (most likely there's some kind of in-house lossy compression implementation). Also, I've started to read the story, and, honestly, all this pseudo-horror stuff is a major turnoff for me. It's not like I'm gonna read it myself If anyone cares to see the demo, PM me. Quote
mnakamura Posted June 24, 2016 Author Posted June 24, 2016 4 hours ago, Scorp said: Nocturnal Illusion (it runs on an engine which was reversed in VILE interpreter http://vilevn.git.sourceforge.net/git/gitweb.cgi?p=vilevn/vilevn;a=tree), Divi-Dead (I do not remember, but I think in github you can find easily engine reversed for Squirrel or like that. Or you can read my script extracted/reversed version, if this could be of any help, that's quite evident from it how maps were done ). I have a bunch of krkr2 VNs with map (like KnS, Fate HA), but I doubt they are good example. Wow, thanks for the suggestion! Your Divi-Dead reversing looks really cool What have you used it for? You have done a port / remake of an engine or what? Quote
mnakamura Posted June 24, 2016 Author Posted June 24, 2016 5 hours ago, Mad Pierre said: I've submitted pull request that adds colorisation of character text if specified in novel. Please kindly merge. Thanks for your patch! But I honestly don't think it's a good idea to write about every patch on Fuwanovels I read my mail and get these requests, no problems. Quote
Scorp Posted June 25, 2016 Posted June 25, 2016 Quote 43 61 00 00 00 07 00 00 03 e8 msg(seq_num=40 msg="……この時、呼ばれたような気がしたのは、きっと気の所為なのだと思う。") Does not look right Seems still quite a lot of work there, if you really want to implement it, to figure out what everything does. Sound files are in IMA ADPCM format I suppose (as this is the codec which game uses to play sounds), so I think you just need to decrypt them. I just wrote a simple script to extract the script. I was reading Divi-Dead last year (as forget almost completely all about it, last time I played was 15 years ago) and was very disappointed with absence of back log... So I digged out a bit and that's result. mnakamura 1 Quote
mnakamura Posted June 25, 2016 Author Posted June 25, 2016 5 hours ago, Scorp said: Does not look right Seems still quite a lot of work there, if you really want to implement it, to figure out what everything does. Sound files are in IMA ADPCM format I suppose (as this is the codec which game uses to play sounds), so I think you just need to decrypt them. It's all about Pareto principle, as always 80% of work done in 20% of time, and now to get it actually working flawlessly one needs to spend 5x for time Thanks for the hints on sound files. I'll try it now. 5 hours ago, Scorp said: I just wrote a simple script to extract the script. I was reading Divi-Dead last year (as forget almost completely all about it, last time I played was 15 years ago) and was very disappointed with absence of back log... So I digged out a bit and that's result. Now that's a determination one doesn't encounter often nowadays By any chance, can I persuade you somehow to release the sources of your conversion script? If you do, I'll be able to do yet another converter to .story format and everyone could play your Divi-Dead conversion, with all the bells and whistles? Quote
Scorp Posted June 25, 2016 Posted June 25, 2016 2 hours ago, mnakamura said: Now that's a determination one doesn't encounter often nowadays By any chance, can I persuade you somehow to release the sources of your conversion script? If you do, I'll be able to do yet another converter to .story format and everyone could play your Divi-Dead conversion, with all the bells and whistles? I can, but it do not have much meaning, as there is lot of real VM implementations around. For example this one: https://github.com/vnvm/vnvm So you can use it to inspect format and create your own implementation in .story. mnakamura 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.