Development notes/Future ideas

From Touhou Patch Center
Revision as of 14:05, 16 July 2014 by Araceli (talk | contribs) (On the account of you meaning GUI and I forgetting what an improved front end is... I'm going to remove it from the list and place your vote onto GUI.)
Jump to navigation Jump to search

Note that all of this is in no particular order.

Feel free to voice your support for particular features by editing the page and putting something like

:+1 --~~~~

under the respective header.

Future Developments

Icon th143.png Impossible Spell Card

Goal: To completely render Touhou 14.3, Icon th143.png Impossible Spell Card translatable.

Progress: Images, In-game dialogue, Music Room and spell cards all translatable. Resolution dialog and custom.exe are unchanged from Icon th14.png Double Dealing Character and inherit their translations from there.

PC-98

Goal: To completely render the following PC-98 games translatable into non-English languages.

+1 -- , They are good games too ^^ (Cocoo)

Seihou

Goal: To completely render the following Seihou games translatable.

Caveats: Icon sh03.png Banshiryuu won't be included in the list.

+1 --Speedy_Fox_IV

Fighting Games

Goal: To completely render the following Fighting games translatable.

Caveats: Icon th135.png Hopeless Masquerade currently is not viable to be patched with thcrap due to its unique engine structure. Future research will be needed.

+1: I'm tired of the infinite loop of unpacking, editing, packing, and testing, and it has a lot of texts. It would be cool if fighting games become translatable. --VBChunguk (talk) 09:45, 16 July 2014 (UTC)
+1 --Netsuke
+1 -- (Cocoo)

Use Shinmera's artwork

Goal: Using the unique layers of the ORA file, create a custom MediaWiki skin to replace the default Vector grayness.

However, since we want to get away from MediaWiki anyway, we might as well directly make that the new skin of whatever we are going to use.

Patch-level crypto

Goal: Apply digital signatures to ensure the authenticity of patch updates.

Caveats: Has not been implemented so far because it can't work on Touhou Patch Center: The private keys to sign the patch updates must always be on the server. With server breaches being essentially the main thing this is supposed to be a defense against, this would only give an illusion of security on Touhou Patch Center. Fuck this wiki - really, it's been lagging behind development for a while now, and will only continue to not use certain features to their fullest potential.

Patch-level plug-ins

Goal: Allow patches to contain DLLs which are loaded into the game process. This will drastically enhance what patches can do: For example, the British English patch could be generated automatically by adding a DLL that applies a set of text replacement rules to every line of text delivered from the engine.

Caveat: Patch-level crypto is a prerequisite for this. We will not add a feature that executes arbitrary binaries without a way to prove their authenticity.

Git protocol support

Goal: Support the Git protocol for downloading and updating patches. Not only will this be faster, safer and more accountable, it would also get rid of the existing, rather poor files.js protocol, which requires Git patch repositories to run a script before every commit.

Caveats: ... or would it? May need careful planning to not collide with fast bootstrapping or patch-level crypto. This will further leave behind Touhou Patch Center technically, as it is pretty much the only remaining repository that can not easily migrate to Git.

Credits System

Goal: Display the contributors of patches in a more accessible way.

Korean Translations

Goal: To assimilate Korean .tns translations provided by VBChunguk.

+1: I can get the patch engine for .tns. Maybe we need to reverse engineer it and figure out the format. --VBChunguk (talk) 09:38, 16 July 2014 (UTC)

Decimal Points

Goal: Enable decimal point for languages that need them.

GUI

Goal: To create a interface for thcrap users for convince, as well as localizing thcrap configure.

Caveats: Intend to create a IDE, which increases the complexity of future development.

+1 -- So the average user will not be lost in that cmd like interface - Rankai

64-bit application patching

See here.

Custom replay file name schemes

See here.

Contemplated Ideas

Len'en Project

+1 --RelightCharge (talk) 10:02, 16 July 2014 (UTC)

Goal: To completely render the Len'en Project translatable. The viability of patching these with thcrap has not yet been estimated, so nothing is decided yet.

Global High Score list

Goal: To create a automatic High Score system using score.dat files.

Caveats: An anti-cheating system would be necessary to be implemented, third parties/other developers would be favored to create this one.

<Nmlgc> So I was thinking a bit about the global high score list idea that came up...
<Nmlgc> To eliminate cheating, we need replays as proof, and we need to verify that those replays are legit... by running them automatically and comparing the scores at the end.
<Nmlgc> This, of course, has to be a server-side process, so this replay simulation needs to run under Linux, without a desktop environment, and it must be possible to programmatically invoke certain stages.
<Nmlgc> And there is one project that will be able to do all this, and it's called... PyTouhou.
<Nmlgc> Which, however, seems to focus more on enhancing portability of their th06 engine reimplementation to all sorts of systems, as well as adding their own mechanism of running custom games made for the engine, and less about covering more of the original ZUN game engines.

Steam Integration

Goal: To allow for easy integration for the Steam Interface. The Ice project as mentioned in the notes may be one of those solutions.

RtL Text

Goal: To have text to appear right to left for text, as mentioned in the notes.

HTTPS

Goal: To allow HTTPS to be enabled on thpatch.net

Fast bootstrapping of patches

Goal: This would only download the most necessary data of each patch (game version data in particular) on initial patch selection, with the rest being only downloaded when needed (e.g. once a particular game has been located on a user's system).

Touhou Patch Center 2.0

Goal: Write a new server software (from scratch?) that can replace this terrible MediaWiki. It will probably follow a "patch server farm" approach, similar to GitHub

+1. I don't really want to maintain this site in this state anymore. Kill-o-matic's bug reports provide a good impression of just how broken the entire thing is (and trust me, if you've seen the server, it's a lot worse). In fact, adding any more features before the rewrite will just make it even worse. --NamelessLegacy (talk) 13:41, 16 July 2014 (UTC)

Support for completely different game engines

Goal: To enable thcrap to be able to patch other mediums, such as Visual Novels, fan games, and so on. We will rename the patcher once the number of non-Touhou games patched with it exceed the number of Touhou games. ☺