XaiJu
sonicether
sonicether

patreon


SEUS PTGI Modding Support Discussion

Hello! So, as I've talked about in previous posts, I've been looking at modding support for SEUS PTGI. One of the problems has to do with modifying the block.properties file inside the shaderpack.

The block.properties file needs to be setup a certain way for any blocks added by mods to function properly with SEUS PTGI, and without any tools, it's ridiculously time-consuming. I mean, just look at this excerpt from the current block.properties file in SEUS PTGI. This is only with vanilla blocks support!


So, I'm thinking about what to do about this problem. The least I can do is update SEUS PTGI's license to permit modification and distribution of the block.properties file. Then, at least people would be able to share the burden a bit. But, you couldn't, for example, get a block.properties file for one mod, and another that supports a different mod, and easily combine the two. And I've heard that people like to use more than one mod at a time...

If I were just to write a tool for myself, I'd put together a simple .exe with some config text files (like a list of all mod blocks that are shaped like stairs, for example), and it would just run and populate the block.properties file for me. So, the only work I'd have to do is essentially make a list of each mod block, per shape type (stairs, slabs, doors, etc.)

Firstly, I can't possibly provide a block.properties file that would support any version of any mod, it would just be an impractical amount of work. Secondly, I don't feel that distributing an .exe is the best idea. Sure, people are responsible for what they download and execute, and if you trust me, you might feel okay with it if you got it from a reliable source (my website). But, since it's a pre-compiled binary, you can't be sure what it'll do when you run it, and I don't like that. Plus, it feels like a huge opportunity for people to distribute shady modified versions of it.

I'm afraid I just don't know enough about safer alternatives, and I was hoping that some of you may be able to provide some advice. Basically, I want a safe way to provide people with a tool that is capable of reading files and generating a new file that has as much end user convenience as possible (something as convenient as, get your .txt files with lists of mod blocks, and then run the tool).

What are your thoughts? 

Comments

How

JH

how

MeinMonkey

how

Legit just downloaded it, idk what you're on about

I've been able to throw your shader pack on some modpacks without much issue from what I can remember. I remember using it with FTB Interactions, and some custom models cast shadows properly. So maybe you don't need to worry about it too much? But idk

me either

Bunny

wow i got scammed i can download seus

I have a 500 dollar od can it handle because I don’t want it exploding

I am really looking forward to new textures, got the SUES PTGI and a new RTX 2080 Super that I am enjoying everything. thank you for making this. My only suggestion is to make the lava texture more lava like? <3

Andrew Keim

How can i make Industrial Craft 2 luminator to be treated as a light source, when it powered? I tried typing almost everything, like "luminator_flat_active"; "ic2:te:luminator_flat_active"; "ic2:te:type=luminator_flat_active";

Can I refund?

Wont let me install Ultimate Immersion Mod, even though I paid

i have a problem where there are some black flickers on the blocks and everxtime i moove they moove also

Swiper

HOW TO WITHDRAW FROM SUPPORTING LESS TO PAY EVERY MONTH 1usd/

or you could implement it into a discord bot on your server. add me on discord and i could help you with that username#1234

Open source your program on github and simply have advanced users compile it them selves

Use something like a python script or batch script. I prefer python as it is cross platform and I use Linux. People who know how can read python scripts to see what they do and installing python is not hard. I recommend using PyQT5 for cross platform GUI. Personally, I don't like python's syntax but it will be compatible with the most amount of users' systems. This is better than a mod as some people may not have forge/fabric/liteloader installed, or they may not be updated when optifine is

This seems pretty dead? 3 months old. I can't join the Discord as Patreon is having some bugs. Will be see an update anytime soon?

There are a couple of options, One would be an auto generator that uses minecraft's internal block properties. This could be a startup only mod that waits until all other mods are initialized, then generates the list based on the basic block properties. Another option would be to, as you suggested, create a tool to do this, but I believe a tool external to minecraft would not be beneficial. you could create an in-engine mod that allows for a preview, or allows for this to be changed and re-loaded on the fly, so people could tweak it to their hearts content.

how do i cancel my subscription after the first month

don't have any method to call some file in the mods folder to apply the block properties, like if have mods installed call to block.properties on the mod folder, each modder add these properties on his own mod, I'm don't know about programming I have a little experience and try to help you. sorry if this comment is totally useless

become a patreon to download

Bo Pedersen

How do I download SEUS PTGI E9? the stone tier said ad free downloads, idc about ad free but I wanna try the shaders please

I've no idea how any of this works, but I adore the tech behind it. How would one allow for a mist effect like that of Corail's tombstones to work effectively with PTGI?

I would not hesitate to go the executable route, and just make it very clear that people should only get it from you or mirrors you officially endorse. Right now, so many mods for minecraft are served through ad.fly which IS legitimately dangerous, especially for kids, that a compiled binary distributed by an honest individual is not a big deal. I mean, most of us probably have hundreds or thousands of compiled binaries from people we have never even heard of, already, for various reasons. I guess what I'm saying is, if that's the best tool for the job, then by all means, use it!

I think a more simple/universal solution would be to have a mod that adds most of the blocks of a mod into the Lighting-option GUI where Redstone, Lapis, and Emerald Blocks are RN. The mod itself could have some detection on if a modded block is a light-source, then turn on it in that GUI, but having the option to turn on/turn off a block if it goes wrong would be a good option.

Ian McCabe

Yeah, and it could likely hook into Forge's Mod-Menu and Organize options for Light-sources off of that. Like how you can turn on and off glowing Redstone, Lapis, and Emerald Blocks in E10, it could be an expanded version of the GUI, using Forge's Mod-Detection to let the player manually turn on/off block lights if the PTGI-Lighting Detection misses or mis-activates a block

Ian McCabe

I'd personally lean more towards a JAR rather than an EXE, simply because it's cross platform, and I use this under Linux. And, it is very much like how other minecraft mods are installed, configured, and run. I agree that it comes back to a question of trust for running arbitrary code... But... isn't that the same exact risk as installing your shader mod to begin with? As long as someone is downloading and running arbitrary code, at what point does it become a problem? It would be a util that scans game files and generates a config file for use within your mod, and frankly that's a far more elegant solution than relying on third parties to manually submit changes to you, or where multiple parties generate their own individual files that a user needs to manually merge and address any duplicates. Then, whenever someone installs an update to yours or another mod they use, they re-run said JAR and it rebuilds the block.properties file

Kalani

Well, I have a few ideas that could potentially work 1. Like Brightest Pixel Suggested, maybe have a custom mod that scans the block.properties of installed mods within a world, then merges that into a Specialized RAR/File of PTGI for that specific world 2. Release the required bit of code to Mod Developers to allow them to pre-program in the functionality for PTGI to detect their blocks, and program a corresponding detector in PTGI itself/a mod 3. Honestly, I would honestly be fine with an RGB/Dedicated Color Light block mod made by you to showcase for Devs to look into how that mod can do it.etc (By Dedicated Color Light Block, I mean things like blocks that are purely a color, that emit light, of many colors Red, Purple, Pink, Green, Turquoise, Blue, White.etc

Ian McCabe

Would it work to create a separate mod to generate/merge block.properties during runtime? The mod could search through the loaded mods for some sort of block.properties file included in each mod that supports ray tracing.

Brightest Pixel

Instead of having a single file, can you support having multiple block.properties files? Maybe each mod could have their own that you load up?

In this case, the best solution for this utility would probably be to write it in Java, distribute the .jar, and release the source code. The source doesn't need to have a particularly permissive license; just having it *available* will allow community members to see how it works and establish trust. Doing the utility in Java will ensure that it's basically cross-platform for us Mac and Linux folks without a bunch of extra effort. Open source doesn't mean no copyright; remember that you don't have to go all-in on FOSS if you're not comfortable with that.

zeta0134

So for now it would be cool if mod blocks are automatically recognized as full blocks. whether they are or not. and new light sources should be recognized. it's that is that not problem, but I think I'll make sure the shader is easily playable with modpacks.

GulliUlli

Considering this tool will only be to modify the files and won't be something that needs to run frequently, I'd suggest uploading the source code and binaries in GitHub. Not only can people compile the app themselves, but it's easier for others to build ontop of the tool you've made to add more features. I am not sure what programming language you are using, but I've recently made tools in Rust (C++ alternative) for a work-related thing and it was ideal in the end.

I think this would be the best solution, allowing the user to have one single place for it and accessing configs for older mod versions, while not creating to much overhead on the developers side :)

As weird as this may sound, I wouldn't really think so much about any blocks added from mods as much as additional dimensions, both the vanilla ones and ones added from mods, like Galacitcraft and Aether Legacy. Also compatibility with Bloodmoon would be awesome. These are all mods for 1.12.2 or lower, but I think extra alterations to the shaders, most of all the sky, in other dimensions should come before any blocks themselves. Plus, I feel like that would be the easiest task to settle with for the time being.

Chase Sutton

Is there a way to setup a file folder structure that multiple block.properties files can be added to and then imported/combined at runtime? Might be a pull request with optifine?

Rubedo Alaberti

I would say not to worry about mods as much until the shader is abit more performance friendly and stable

Vanilla Punch141

Anything interpreted like python?

So far, the best solution seems to be that .exe, but like you said that opens a whole other can of worms that could easily get out of hand. I personally would suggest allowing people to modify the .properties themselves and simply put the responsibility on the modder's shoulders. Looking at just what has been done in order to get a vanilla version, any effort by just one person to add modded elements is going to be far too time consuming. One idea that you could do, however, to make it easier for modders would be to make some sort of tutorial/documentation on how to add them, although you may already have that within the file itself.

David Chick

Could revert to legacy block behavior to bring back bump mapping. That's the only thing I notice that's missing in PTGI that was enabled in legacy SEUS. I use Chromahills resource pack, an original promoter of SEUS so it's specifically designed for it.

Heiden Shadows

Well, It could be possible to write a mod that does this itself. And depending on how Optifine is loading the block.properties file, it might even be possible to do this automatically without any user input at all! If you like this idea I would be happy to take a look into it sometime, if I can find the free time to do so.

Walt McCaslin

Similar to what I mentionrd about the collaboration thing

CielMC

Or javascript for web distribution

CielMC

You could see about contacting a mod author to create a forge mod that specifically queries what mods are installed, maintains a database of properties (possibly auto-generated) for any non-cubic block that other mod authors create and submit, and generates a block.properties file on the fly. Especially with 1.14 Forge, this might be possible during installtime, cutting down on launch time costs significantly.

Could you maybe make a companion mod that at runtime generated the right block.properties file? All the information needed should be in the model definitions and block registrations right?

Have an option to disable the shaders for certain liquids. I remember trying out PTGI on Direwolf20's modpack for 1.12.2 and I couldn't distinguish what was poison water or regular water. Lead to some unfortunate things.

Instead of an exe, could you write this program in Java and distribute the .java source code with simple instructions of how to compile/run it? We all have Java installed already, it is required for Minecraft and compiling/running it is two simple commands.

You could make SEUS PTGI support certain mods that are popular, and then have a website for people to recommend mods. So you would look at the list, pick out ones that might work better with SEUS, and then try and get that mod working with it. It could require a ton of work though.

I would suggest a web solution, a mixture out of Jorge López Tello and Andreas Jörgensen above, with JavaScript and a Github repository. That way, you don't have to host anything (Github pages), and mod authors and interested users can submit changes to the generator (like adding mods, blocks and versions). And the actual page will contain a list of mods (+maybe their versions) and users can select the mods they use and the JS will spit out a suitable block.properties

Maybe create a public git repo with the source for the tool and provide release, so people that don't know how to build software can download the precompiled binary, and the tech savvy can compile their own?

Jorge López Tello

Possible another endpoint on your site to upload files.

the .properties generation tool is one way, but is it possible to look through the mods for light emitting blocks actually? if it does, then i would suggest this method or it is possible to get light emitting blocks right with optifine like how other shaderpacks behaves? (i didn't know much about shading, yet i doubt this actually works)

What about a web tool? Upload files, give it your input, download the result? That way no code is run on anyone else's computer.

I feel like first, you can maybe do some collab with other mod authers so when they design their mod, they also consider PTGI, and second, there should be a moderating system if you are distributing a exe to submit the models, like people submit and has to be accepted by people you trust but that's also people-consuming, I think maybe just make a script to convert a block model to block properties, and the patreons just send their mod in the discord, so start with patreons first . My grammar was a bit all over the place but im trying to help sonic out here and hopefully it is helpful

CielMC


More Creators