RageLeague

  • Content Count

    1043
  • Joined

  • Last visited

Community Reputation

1479 Excellent

About RageLeague

  • Rank
    Senior Member
...

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Enable
  1. Mods allows you to get achievements, but they aren't allowed except the timer mod according to the rules. Maybe language mods should also be allowed? As long as they are proven to not affect content.
  2. The soundtrack reminds me of pvz
  3. That's a stupid reason. The Chinese version has been worked on before Tencent's majority share buyout. You are messing up correlation with causation. Klei games has been popular among Chinese players among the past.
  4. Right now it seems that when I Ctrl+R in debug, the game just crashes. Edit: Seems like it's just me. Whatever I did with my mod seem to cause this. Probably something about loading audio banks.
  5. I have figured out how to mod audio into the game. There are a few things to note before you start modding your own audio: 1. Griftlands uses FMOD, which is basically a thing that makes adaptive audio. It is basically what makes the adaptive negotiation/battle music work in this game. To mod audio into the game, you need to install FMOD studio. 2. The result of a FMOD studio project are several .bank files. There are currently no good way to reverse engineer a .bank file, so don't rely on the game's bank files. 3. There can only be one master bus in a given game. If multiple master bus are loaded, it just can't. Therefore, using a normal project and export it won't work. You need some tricky steps. Okay, here are the steps to mod it into the game. Make a FMOD project like normal. I won't show how to make one here because I am trying to figure this one out myself. Just look up some documentations. Before exporting the project to a bank file, you need to make sure your project's master bus guid matches the game's guid. In order to do that, you need to find your project's master bus' guid, and replace it with Griftlands'. To find out about your master bus' guid, go to Windows > Mixer, and on the right under "master bus", right click on the correct spot where the option "Copy GUID" appears. Then paste it somewhere. There is no good way to modify the guid with the FMOD editor, so you need to go to the project folder and replace all reference to your old bus guid with Griftlands' bus' guid (which is afd9334f-b320-4b4e-8719-ac15b8a5d780). I used vs code's find and replace feature, but as long as you replace it, it's all good. Just make sure only the guid part is replaced and not the brackets that appears in the copy and paste. (Side note: As of the writing of this article, klei has not published their fmod project, or a project package. As mentioned before, there is no good way to reverse engineer exported .bank files, and the game's default engine does not allow access to master bus' guid in lua so we need another way to figure out the game's master bus' guid. Luckily, FMOD can be used by Unity with minimal setup, and there is an FMOD method allowing access to the guid of a bus, so I loaded the bank file to Unity and wrote some script to access the master bus' guid. The guid of the master bus is afd9334f-b320-4b4e-8719-ac15b8a5d780) Export the project once you're done. Under your project's export folder, you should see the exported bank file. There should be at least two, with one being a string bank. Copy the exported bank file to your mod folder and load it using AUDIO:LoadBank(filepath, async). For small projects, set async to false because you don't really need it. And there you go! If your bank file is successfully loaded, you should see your bank listed when you type DBG(AUDIO.sound_banks) into the debug console. (Now referencing the sound event is a bit more tricky. I'll make a tutorial later)
  6. I'd like some sort of way to make "high voltage" transportation. Basically using a building to make it possible for more than 50 radbolt to be shot at once.
  7. I hope there's more modding support once the game releases. Right now I'm trying to figure out how to add sound events to the game, but that require the devs to release at least a project package. Something about routing new events to the main bus. Also, the ability to make custom animation could be nice.
  8. Looking at the log file(instead of debug console using ctrl+~), the error is something like this: When I am trying to load the main bank file. The string file worked fine. Not sure what happened here. After some investigation, apparently fmod studio doesn't allow loading of multiple projects. https://qa.fmod.com/t/loading-multiple-banks/15185 Which a solution is linked here: https://fmod.com/resources/documentation-studio?version=2.0&page=supporting-downloadable-and-user-generated-content.html Either way, it seems that you need to provide a copy of the project, or a packaged copy if you don't want the player to edit specific contents.
  9. From the post listed above: That sounds like a good idea. Bank files can't be reverse engineered back to the original project file, so in order to have the structure be similar to the original bank file, I need at least a basic structure of the original project file. Also, how is "engine.sound:LoadBank" implemented? Is it a function written by Klei or is it just calling part of FMOD's api? Right now, this function returns nil if a bank fails to load, regardless of reason, so I'm wondering if it can somehow give out a more detailed error message for debugging?
  10. That would probably work. Thanks. Removing the transient flag when something gets marked for deletion may be too roundabout for my taste, because for every location affected, I have to manually set up an event listener that listens for agent retirement. And also unmarking a location after it gets marked might cause issues when the original location is to be marked for deletion anyway for some reason.
  11. Actually, I have an idea that require very little modification to existing code. If you know how to code, you can define your own custom formatting function by assigning methods to the table called "loc". I have no idea how declensions work because I don't speak a language that uses it, so I'll just use an example in English. Let's say you want to make a person's name be different in British English and American English. For example, let's say Nadan's British name is NaDan while Nadan's American name is NAedan. We translate Nadan into something like "NaDan|NAedan"(make up your own formatting if you like) and define two functions: function loc.to_british (str) parts = str:split("|") if #parts == 2 then return parts[1] end return str end function loc.to_american (str) parts = str:split("|") if #parts == 2 then return parts[2] end return str end In that case, to use the British version of the name in the compendium, use "{1#to_british}" or whatever identifier it is used, and to use the American version, use "{1#to_american}". You might also want to override the "loc.agent" function so that it defaults to one version, but this can be worked on later. I hope this make a little bit of sense. If not, you can make up a formatting you'd like and I can make up some code for you, if you want.
  12. Yeah you can't do that under the current system, I think. This is the code: As you can see, when formatting, it calls Agent:GetName before passing it to the formatter, so during formatting, your only info is the string rather than the agent, so you cannot apply declension functions to whatever you are looking at. The reason why this is done is that declension functions like name_nominative also wraps the name around a tag, which highlights the string and gives it a tooltip. They probably don't want the highlight, so they called GetName before passing it into the formatter. Unfortunately, it has the side effect of not providing enough information regarding declensions. Unfortunately, there's just way to many places where this happens for mods to be effective. You kinda just hope that the devs will fix this issue.