Touhou project язык программирования

Touhou

Bullet-hell shooters is a genre of 2D shooters based on really complex patterns, which are beautiful and interesting to look at, and impiles great difficulty, memorizing patterns and fast player reaction.

Touhou Project games are one of the most popular of this genre because, among other things, the in-game world is a giant universe, the music (at least the WAVs in the full version) is spectacular, and, if you have been on the internet for a while, you might stumble upon its curious fanbase, which has produced videos, music, manga (japanese comics) and even unofficial games.

Despite the difficulty, they can be very addicting games.

Installation

PC-98 games can be played using Linux-native X Neko Project II emulator ( xnp2 AUR ).

The following packages only depend on Wine to run (and Timidity++ to play MIDI music). A python engine is under development to remove the wine dependency. They install the free trial versions. You can easily replace the trials with the full game if you have it.

These games have been packaged for your convenience:

  • Touhou 6: Embodiment of Scarlet Devil — th06-demo-wineAUR or th06-demo-pytouhouAUR
  • Touhou 7: Perfect Cherry Blossom — th07AUR
  • Touhou 8: Imperishable Night — th08AUR
Читайте также:  Программирование пульта от приставки dvb t2

We need help packaging more Touhou games for the AUR. This is a list of games that have free, downloadable trial editions to build off of:

  • Touhou 7.5: Immaterial and Missing Power
  • Touhou 9: Phantasmagoria of Flower View
  • Touhou 10: Mountain of Faith
  • Touhou 10.5: Scarlet Weather Rhapsody
  • Touhou 11: Subterranean Animism
  • Touhou 12: Undefined Fantastic Object
  • Touhou 13: Ten Desires
  • Touhou 13.5: Hopeless Masquerade.
  • Touhou 14: Double Dealing Character
  • Touhou 14.5: Urban Legend in Limbo
  • Touhou 15: Legacy of Lunatic Kingdom
  • Touhou 15.5: Antinomy of Common Flowers
  • Touhou 16: Hidden Star in Four Seasons
  • Touhou 17: Wily Beast and Weakest Creature
  • Touhou 18: Unconnected Marketeers

Python Engine

Linkmauve has made an experimental python engine to make the games more portable. It is definitely not stable, and is more of an outline for an engine than an actual one, but it is interesting nonetheless. See packages pytouhou-hg AUR and th06-demo-data AUR .

Extra Info

Installing the full version

If you have the full version of either Imperishable Night or Perfect Cherry Blossom, you can place them in your home folder, or you can place them in the overlay so that they will work in the liveCD and also get installed to disk.

Note: .th08 is Imperishable Night’s wineprefix folder, and .th07 is Perfect Cherry Blossom’s.

  1. Find the folder with the Touhou game files.
  2. Set your file manager to see hidden files/folders. (in Cherimoya’s Dolphin file manager, just press Alt+. (the period key))
  3. Go to your «Home» folder and find the folders .th08 and/or .th07 .
  4. Paste your game files right over the shortcuts in either .th08 or .th07
  5. Start your games normally. They will use the full version.

MIDI Music

If you are using the trial edition, they only include MIDI files. To play them, you will also need to install timidity++ along with some soundfonts ( freepats-general-midi ).

Now add the following lines to the Timidity++ configuration file:

dir /usr/share/timidity/freepats source /etc/timidity++/freepats/freepats.cfg

Remember to start the timidity.service user unit before playing.

Audio in Windows-era games

If you find that you have no audio in any of the Windows era or later games (Touhou 6 and later), make sure to install lib32-alsa-lib and lib32-alsa-plugins , and recheck your configuration in winecfg. In addition, set the audio in-game to «WAV» mode.

Steam version

You can find games available on Steam from this list.

thcrap

The Touhou Community Reliant Automatic Patcher (thcrap) is mainly developed to facilitate self-updating, multilingual translation of the Touhou Project games on Touhou Patch Center, but can theoretically be used for just about any other patch for these games, without going through that site.

  • Download your purchased game from Steam.
  • Download thcrap from here, and extract to a directory, for example ~/Touhou/thcrap .
  • Create config/games.js with content
~/Touhou/thcrap/config/games.js
  • Add ~/Touhou/thcrap/thcrap.exe to your Steam library. Then run thcrap.exe from Steam. If it doesn’t run, try different proton version. For Flatpak version of Steam, use Flatseal give Steam permission to access ~/Touhou .
  • During he installation you choose your language patch. Here using default english pack in this guide. Then it will ask you game location, since we already added the game in games.js, just click next. Then, it asks for shortcuts. We don’t create any shortcuts here, since we will add the patch to Steam launch command.
  • Download thcrap-steam-proton-wrapper script from the github repository. And make the script executable
$ chmod u+x ~/Touhou/thcrap-steam-proton-wrapper/thcrap_proton
~/Touhou/thcrap-steam-proton-wrapper/thcrap_proton
THCRAP_FOLDER THCRAP_CONFIG=en.js .
  • Change your Touhou game launch options. Go to your Steam library —> click your game —> settings icon —> properties. Edit LAUNCH OPTIONS under GENERAL settings to
/home/username/Touhou/thcrap-steam-proton-wrapper/thcrap_proton -- %command%
  • Now when you launch the game through Steam it will launch thcrap, then thcrap will update the patch and launch the game. It’s recommended you uncheck the Keep the updater running in background in thcrap setting, so Steam could properly shutdown the game when you quit.

vpatch

Note: Vsync Patches (vpatch) only works for the executable file from original disk. You need an .exe file from original disk, not the steam version. See this for purchasing guide.

Vsync patch reduces input delay (game responds more quickly when a button is pressed).

  • Download the patch from touhouwiki, and extrat it to ~/Touhou/VsyncPatch/ .
  • Go to vpatch_rev7 directory, then copy vpatch.exe , vpatch.ini and vpatch_th10.dll to the game directory ~/.local/share/Steam/steamapps/common/th10/ .
  • Open vpatch.ini in the game directory with your favorite text editor. We are going to change windows size. For TH10 the default window is very small. First, set enabled = 1 under [Window] section. If using 4K display, set Width = 2667 and Height = 2000. If using 1080p display set Width = 1280 and Height = 960. Based on this tutorial. To fix the Th10 Marisa B 3.xx power bug, add BugFixTh10Power3 = 1 to [Option] section.
  • Make a backup of original Steam executable. Copy ~/.local/share/Steam/steamapps/common/th10/th10.exe to ~/Touhou/th10.exe.steam . This is for convenience, you can always recover it using verify local data in Steam.
  • Replace the ~/.local/share/Steam/steamapps/common/th10/th10.exe with the one you legally obtained from original disk.
  • Change the Steam game launch option to
/home/username/Touhou/thcrap-steam-proton-wrapper/thcrap_proton -v -- %command%

See also

Источник

touhou-java | A Java implementation of the Touhou Project | Game Engine library

touhou-java is a Java library typically used in Gaming, Game Engine applications. touhou-java has no vulnerabilities, it has a Permissive License and it has low support. However touhou-java has 24 bugs and it build file is not available. You can download it from GitHub.

A Java implementation of the Touhou Project

Support

Quality

Security

touhou-java has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

License

Reuse

touhou-java has no build file. You will be need to create the build yourself to build the component from source.

Top functions reviewed by kandi — BETA

kandi has reviewed touhou-java and discovered the below as its top functions. This is intended to give you an instant insight into touhou-java implemented functionality, and help decide if they suit your requirements.

  • Saves the current font to the given output file
  • Loads glyphs into the backing texture
  • Load a single glyph
  • Loads the TTF font
  • Frame the game
  • Set player miss
  • Kill Bullet
  • Paint the component
  • Converts a point to a pixel
  • Renders the game
  • Start the menu
  • Renders this card
  • Initialize the player
  • Draw a glyph
  • Paints the knob
  • Returns the height of the rendered text
  • Frame the game
  • Initialize parameters
  • Initializes this player
  • Initialize
  • Initialize the marisa
  • Renders image
  • Returns the width of the specified text
  • Initialize the game
  • Kill this game
  • Inject the image

touhou-java Key Features

touhou-java Examples and Code Snippets

Community Discussions

Trending Discussions on Game Engine

SpawnObject for ak(Clone) (UnityEngine.GameObject), NetworkServer is not active. Cannot spawn objects without an active server

I’m very new in Unity and Stackowerflow. If i did something wrong, please don’t judge me ^^ I used Unity’s TPS Controller asset for my game. In first, it worked very well. But then It broke. But i didn’t do anything 🙁 (i don’t even touch scripts or prefabs). After that, i deleted asset and re-download it but it didnt work again. Here is one example from my broken scene and these are the codes from my controller. Thanks For Any Kind of Help.

Answered 2022-Apr-08 at 23:22

I had the same problem too. I researched a lot of documents about that and finally, I solved this problem. The problem is not about your codes or events or smth else. The problem is related to Unity. I don’t know the exact reason for the problem but you can solve it this way: First, go Edit > Project Settings and select Input System Package from the Left tab. And then, change the Update Method with Process Events In Dynamic Update. And that’s all! Dynamic update means the usual Update method that you see in the scripts void Update().

I am learning to program a game engine which is why I followed a tutorial, with that tutorial I have gotten this far and even though my code is identical to theirs (theirs did work in the videos) its not working the way it is meant to. The triangle stays black no matter what. There is not any errors.

Answered 2022-Apr-03 at 07:08

You actually assign the shader program to a local variable in the event callback function’s scope. You need to assign it to the variable in scope of Main :

I’m currently attempting to create a first-person space flight camera.

First, allow me to define what I mean by that.

Notice that I am currently using Row-Major matrices in my math library (meaning, the basis vectors in my 4×4 matrices are laid out in rows, and the affine translation part is in the fourth row). Hopefully this helps clarify the order in which I multiply my matrices.

What I have so Far

So far, I have successfully implemented a simple first-person camera view. The code for this is as follows:

Answered 2022-Mar-02 at 23:15

The problem is that two numbers, pitch and yaw, provide insufficient degrees of freedom to represent consistent free rotation behavior in space without any “horizon”. Two numbers can represent a look-direction vector but they cannot represent the third component of camera orientation, called roll (rotation about the “depth” axis of the screen). As a consequence, no matter how you implement the controls, you will find that in some orientations the camera rolls strangely, because the effect of trying to do the math with this information is that every frame the roll is picked/reconstructed based on the pitch and yaw.

The minimal solution to this is to add a roll component to your camera state. However, this approach (“Euler angles”) is both tricky to compute with and has numerical stability issues (“gimbal lock”).

Instead, you should represent your camera/player orientation as a quaternion, a mathematical structure that is good for representing arbitrary rotations. Quaternions are used somewhat like rotation matrices, but have fewer components; you’ll multiply quaternions by quaternions to apply player input, and convert quaternions to matrices to render with.

It is very common for general purpose game engines to use quaternions for describing objects’ rotations. I haven’t personally written quaternion camera code (yet!) but I’m sure the internet contains many examples and longer explanations you can work from.

Источник

Оцените статью