EDIT: Also, why are we not able to replace bios.lua with resource packs?
This is a read-only snapshot of the ComputerCraft forums,
taken in April 2020.
Ability to update resourcepack files without restarting the game.
Started by ElvishJerricco, 12 July 2013 - 06:20 PMPosted 12 July 2013 - 08:20 PM
In developing some stuff to be added via resource packs, I realized that you can't really update the files used in game properly without restarting the game. That makes for a very slow development workflow. Also, for some reason CC only uses resource pack zips. If your pack is in a folder, it doesn't work at all. Which makes for an even slower workflow because you have to write a script to take your code, zip it up, and move it into the resourcepacks folder. And you have to remember to run this script every time you want to test.
EDIT: Also, why are we not able to replace bios.lua with resource packs?
EDIT: Also, why are we not able to replace bios.lua with resource packs?
Posted 13 July 2013 - 01:12 AM
I wouldn't call this ComputerCraft really, it is mainly to do with Minecraft itself. But it really sucks!
If you are editing the BIOS, this would help, but if you just want to put a program in the ROM, edit it first and then put it in the resource pack.
If you are editing the BIOS, this would help, but if you just want to put a program in the ROM, edit it first and then put it in the resource pack.
Posted 13 July 2013 - 01:58 AM
I wouldn't call this ComputerCraft really, it is mainly to do with Minecraft itself. But it really sucks!
If you are editing the BIOS, this would help, but if you just want to put a program in the ROM, edit it first and then put it in the resource pack.
If I'm not mistaken (and I very well could be considering CC is closed source), CC does some manual loading of resource packs in order to take all the Lua bits from all available resource packs. I imagine it does this while the game loads up. Then I'm not exactly sure how Java reads files from zips, but clearly that's a cause of issue if the zip is changing and CC doesn't know that.
As for the folder thing, resource packs are able to be held in folders instead of zip files. So that's just another reason I think CC is doing some special resource pack stuff. And I don't imagine this part would be hard to fix. In fact, I bet if it were fixed, you could at least update files held in folders instead of zips without trouble.
Posted 13 July 2013 - 03:20 PM
Please fix this, I'll also have these problems when I update to 1.6.2. I have about a gazillion mods and restarting the game isn't exactly fast….
Posted 13 July 2013 - 07:18 PM
Since you cannot replace bios.lua anyway, a workaround would be to update the files in individual computers in the saves folder. These will be used the next time the program is run, no minecraft restart required.
Posted 14 July 2013 - 04:05 AM
Since you cannot replace bios.lua anyway, a workaround would be to update the files in individual computers in the saves folder. These will be used the next time the program is run, no minecraft restart required.
The idea is that editing bios.lua should be possible through resource packs, and editing rom files is the main reason you would use resource packs for ComputerCraft. I cannot edit bios.lua, and editing rom files requires a game restart to have the updates take proper effect. I'm not trying to change the files within the save folder, I'm changing rom files. Also, the biggest workflow interruption is the fact that we have to pack all our rom changes into a zip and move that into the resourcepacks folder before we can restart the game. We need to be able to just have a folder where we edit our source code in the resourcepacks folder.
Posted 14 July 2013 - 02:02 PM
So what prevents you from doing the working testing in the saves folder, and final testing in the resource pack? The files work exactly the same in either place. If it's a case of, "I don't want to do it the easy and sensible way," I'm afraid that is going to be solely your problem. I don't really see a lot of value in overwriting bios.lua. It seems like the one file that would be likely to see large numbers of packs wanting to needlessly replace.
And doesn't texture pack creation have the same workflow obstacles now? At least we do have the saves folder, and are not limited to just using resource packs for development and testing.
And doesn't texture pack creation have the same workflow obstacles now? At least we do have the saves folder, and are not limited to just using resource packs for development and testing.
Posted 14 July 2013 - 04:40 PM
I thought that packs could be run as folders in the resourcepacks dir, and reloaded by switching to default and back.
Posted 14 July 2013 - 07:07 PM
So what prevents you from doing the working testing in the saves folder, and final testing in the resource pack? The files work exactly the same in either place. If it's a case of, "I don't want to do it the easy and sensible way," I'm afraid that is going to be solely your problem. I don't really see a lot of value in overwriting bios.lua. It seems like the one file that would be likely to see large numbers of packs wanting to needlessly replace.
And doesn't texture pack creation have the same workflow obstacles now? At least we do have the saves folder, and are not limited to just using resource packs for development and testing.
If I want to replace the rednet file, or the shell file, or any other rom file, I can't test that in the saves folder. It simply doesn't work. I can't go to saves/save/computer/id/rom/apis/rednet and make modifications. The only way to do this is through resource packs. So the resource packs have limited us in all the ways that had anything to do with editing the lua files in the decompressed mod. We used to be able to decompress CC, and edit bios.lua, and any rom file as we saw fit. And that was the only way to make these changes. You cannot do it through saves. The idea of moving this work into resource packs is great. But it's limited us in that we can't edit bios.lua as we could, and we can't update files without rezipping, moving, and restarting.
Texture pack artists have always had this problem, and now no longer have this problem. Default MC behavior allows folders for resource packs. But Dan does some special resource pack code and didn't account for the idea of folders for resource packs. So now texture pack artists can have the easier workflow, but CC modifiers can't.
I don't understand what's not to get about this. You can't do this work in the saves folder, and you can't do this work without recompressing and moving your file. Then when you do move your file, CC doesn't read it correctly anymore, so you have to restart the game for CC to reload it.
Posted 14 July 2013 - 11:39 PM
Well, I suppose that is true. It does seem like a bit of a bad idea for resource packs to replace default files in the rom folders, but if that's really what you need, I suppose that the suggested workaround would not be sufficient.
Posted 15 July 2013 - 12:47 AM
Well, I suppose that is true. It does seem like a bit of a bad idea for resource packs to replace default files in the rom folders, but if that's really what you need, I suppose that the suggested workaround would not be sufficient.
Well it seemed to me that the only reason Dan did any of the work he did for resource packs was so that people could replace the default files. So bad idea or not, it appears to be Dan's intention, and it's not really working that well.
Posted 15 July 2013 - 04:03 AM
I still don't understand your logic behind this… Yes it would be really nice if the resource pack reloaded when it was changed, but there is all this complaining and b****ing for no reason, how you do stuff has not changed…
The old method of modifying the rom required you to unzip the mod, make the changes and then rezip it and then restart the client. The new method just extracts that process into another location, the process doesn't change it stays the same, just a new location that the process happens.
When Dan had plans for this, and implemented it, not once did he ever promise that you would be able to replace bios.lua, he said the rom, bios.lua is not in the rom! Yes I agree it would be nice to be able to replace bios.lua, really nice actually, but maybe just wait for that to come into CCDesk, and quite frankly idk why you would want to program in-game.
In my opinion of this recent change, yes, there requires a little spit and polish in two areas, allowing folders, and having it reload without restarting Minecraft. However without these changes it is not the end of the world, nor it is not the worst change ever made, it is a big step towards and easier programming future. Lastly you have clearly never programmed outside of ComputerCraft as there are very few languages that actually have a 100% nice to work with workspace. Most are clunky and annoying in one aspect or another. Others you have to jump through lots of hoops to get working!
Side note: did you know that Dan programmed this entire mod in TextWrangler………. thats a text editor, that means no workspace, no auto compiling to test each little change, no error checking, no warnings. All he has was syntax highlighting. So if he can make this fantastic mod without using workspaces, surely you can make your stupid little programs without one too (I say stupid because you're kicking up so much fuss over a game also I am yet to see a program that you made that requires changing rom files, you have, off the top of my head, LSAM and that Project New Life or whatever it is called).
The old method of modifying the rom required you to unzip the mod, make the changes and then rezip it and then restart the client. The new method just extracts that process into another location, the process doesn't change it stays the same, just a new location that the process happens.
When Dan had plans for this, and implemented it, not once did he ever promise that you would be able to replace bios.lua, he said the rom, bios.lua is not in the rom! Yes I agree it would be nice to be able to replace bios.lua, really nice actually, but maybe just wait for that to come into CCDesk, and quite frankly idk why you would want to program in-game.
The idea is that editing bios.lua should be possible through resource packs, and editing rom files is the main reason you would use resource packs for ComputerCraft.
He didn't just make it so that people could mess with the files…… he also made it so that server owners could easily add a new program to all computers if they so desire…Well it seemed to me that the only reason Dan did any of the work he did for resource packs was so that people could replace the default files.
In my opinion of this recent change, yes, there requires a little spit and polish in two areas, allowing folders, and having it reload without restarting Minecraft. However without these changes it is not the end of the world, nor it is not the worst change ever made, it is a big step towards and easier programming future. Lastly you have clearly never programmed outside of ComputerCraft as there are very few languages that actually have a 100% nice to work with workspace. Most are clunky and annoying in one aspect or another. Others you have to jump through lots of hoops to get working!
Side note: did you know that Dan programmed this entire mod in TextWrangler………. thats a text editor, that means no workspace, no auto compiling to test each little change, no error checking, no warnings. All he has was syntax highlighting. So if he can make this fantastic mod without using workspaces, surely you can make your stupid little programs without one too (I say stupid because you're kicking up so much fuss over a game also I am yet to see a program that you made that requires changing rom files, you have, off the top of my head, LSAM and that Project New Life or whatever it is called).
Posted 15 July 2013 - 04:26 AM
If I want to replace the rednet file, or the shell file, or any other rom file, I can't test that in the saves folder. It simply doesn't work. I can't go to saves/save/computer/id/rom/apis/rednet and make modifications. The only way to do this is through resource packs.
Well technically there is an other way to edit and test files form the rom.
Just make a kopie of that file in your save folder and load the API with os.loadAPI().
By the way. It is allways better to work on a copy not on the original.
Posted 15 July 2013 - 10:07 AM
The old method of modifying the rom required you to unzip the mod, make the changes and then rezip it and then restart the client. The new method just extracts that process into another location, the process doesn't change it stays the same, just a new location that the process happens.
No it didn't. You could keep ComputerCraft.jar zipped and make a separate minecraft/mods/ComputerCraft/lua/rom/ folder. The contents of the two would get merged together, the ones in the folder overwriting the ones in the zip/jar/whatever. I haven't had time to upgrade to MC 1.6.2 yet, but this ability was apparently removed? If it was, can we have it back and also keep the ability to use resource packs for installing other people's server-wide programs and such?
Posted 15 July 2013 - 12:40 PM
By the way. It is allways better to work on a copy not on the original.
Right. That's why resource packs should be nice. Because we don't have to change the actual file included with CC.
The old method of modifying the rom required you to unzip the mod, make the changes and then rezip it and then restart the client. The new method just extracts that process into another location, the process doesn't change it stays the same, just a new location that the process happens.
No. You could extract the mod, keep it in the mods folder as a folder, and modify directly without rezipping and restarting.
He didn't just make it so that people could mess with the files…… he also made it so that server owners could easily add a new program to all computers if they so desire…
This stuff still doesn't even work for that.
In my opinion of this recent change, yes, there requires a little spit and polish in two areas, allowing folders, and having it reload without restarting Minecraft. However without these changes it is not the end of the world, nor it is not the worst change ever made, it is a big step towards and easier programming future. Lastly you have clearly never programmed outside of ComputerCraft as there are very few languages that actually have a 100% nice to work with workspace. Most are clunky and annoying in one aspect or another. Others you have to jump through lots of hoops to get working!
I'm not saying this is a terrible change. I'm saying it needs work. Also, I've clearly never programmed outside of CC? Really? I do iOS, OS X, Windows, Java, bash, web design, and a load of other things in my time. You just made a really annoying assumption. I know that you don't have to have a workflow that does everything for you. But it shouldn't feel like your workflow is trying to work against you. There's a difference between not having a workflow and having one that requires you to wait a few minutes to test every tiny little change.
Side note: did you know that Dan programmed this entire mod in TextWrangler………. thats a text editor, that means no workspace, no auto compiling to test each little change, no error checking, no warnings. All he has was syntax highlighting. So if he can make this fantastic mod without using workspaces, surely you can
…
This is a weird argument. The fact that he explicitly decided to use a text editor with no workflow capabilities like TextWrangler is strange. But still, all he has to do is configure his own build scripts and it becomes much easier to work with. He probably built his own workflow rather than relying on eclipse's
you can make your stupid little programs without one too (I say stupid because you're kicking up so much fuss over a game also I am yet to see a program that you made that requires changing rom files, you have, off the top of my head, LSAM and that Project New Life or whatever it is called).
I don't know what it is with you and trying to make me seem like a worthless, clueless kind of guy. But there's a few things about this.
- Stupid? I like to code for my favorite game. Sue me. I'm not the only one who takes this stuff seriously.
- I don't currently change rom files, but I'd like to get into it.
- LASM and Project NewLife took a good amount of work. Those alone should show that I'm not the worthless piece of crap you seem to think I am.
Posted 15 July 2013 - 01:23 PM
Personally, I'd suggest staying away from editing the ROM files. Anything you can do with editing them, you can do without editing them, if you throw in a little jiggery-pokery. Doing whatever it is you're looking to do without touching ROM gives you wider deployment options, too. Something to think about.
Also, theoriginalbit, play nice. I don't want to have to put your toys on the top shelf. That goes equally for everyone as well.
Also, theoriginalbit, play nice. I don't want to have to put your toys on the top shelf. That goes equally for everyone as well.
Posted 15 July 2013 - 05:19 PM
Personally, I'd suggest staying away from editing the ROM files. Anything you can do with editing them, you can do without editing them, if you throw in a little jiggery-pokery. Doing whatever it is you're looking to do without touching ROM gives you wider deployment options, too. Something to think about.
For most reasons I'd totally agree with you, so I see what you're saying. But there's a lot of cases where you want to do this with the rom. Like if I personally wanted to distribute an OS or something like that in a way that would put my system on all computers in the game, or if I want some server-wide changes to be made to rednet or for the appearance of things in CraftOS. It's a niche market, sure. But it's still there.
Posted 18 July 2013 - 07:52 PM
As Im speaking for myself and somebody else (Im not sure if I can mention him, he isnt online as of posting time) I really liked editing the bios and several ROM files. That is because I hate to create for every computer in my world the same f*cking startup script. Of course, it could be easily be distributed via floppies or even via pastebin, but still. It requires some (little) work.
I dont know if that is even possible via the resource packs, sorry if that is possible, but editing the rom files is how I generally role. I have several programs that Ive written myself, not released, and would like to have on every computer. Well, that is possible, fair enough.
But, that somebody I mentioned, is writing his own OS. And that name is worthy, trust me. He redesigned the whole bios, including all the files. He allows to run Cra(p || ft)OS but he relies on one bios. If that functionality is removed, his work is worthless, and he did spent more then half a year on it. I see that there are no exceptions for one individual, but for a matter of fact Im planning to make an OS of myself too.
For that OS Im planning, I actually have to edit the rom files and such. Otherwise it simply is not going to work.
I know the developers have the last word, but I highly demand for that functionality again. Because, simply people can be used to unzipping their distribution of the mod and editing the bios and all the files.
But I can also see from a developer's perspective that the bios never should be edited in any way. I wouldnt agree to that, but its their choice.
As of now Im just hoping its going to be in this awesome mod again.
I dont know if that is even possible via the resource packs, sorry if that is possible, but editing the rom files is how I generally role. I have several programs that Ive written myself, not released, and would like to have on every computer. Well, that is possible, fair enough.
But, that somebody I mentioned, is writing his own OS. And that name is worthy, trust me. He redesigned the whole bios, including all the files. He allows to run Cra(p || ft)OS but he relies on one bios. If that functionality is removed, his work is worthless, and he did spent more then half a year on it. I see that there are no exceptions for one individual, but for a matter of fact Im planning to make an OS of myself too.
For that OS Im planning, I actually have to edit the rom files and such. Otherwise it simply is not going to work.
I know the developers have the last word, but I highly demand for that functionality again. Because, simply people can be used to unzipping their distribution of the mod and editing the bios and all the files.
But I can also see from a developer's perspective that the bios never should be edited in any way. I wouldnt agree to that, but its their choice.
As of now Im just hoping its going to be in this awesome mod again.
Posted 18 July 2013 - 08:11 PM
There is nothing you can do by editing ROM that you can't do without editing ROM. I'd be interested in seeing a counterexample. The move to resource packs is a great one. It will make it much easier to distribute big software packages.
Posted 18 July 2013 - 09:07 PM
There is nothing you can do by editing ROM that you can't do without editing ROM. I'd be interested in seeing a counterexample. The move to resource packs is a great one. It will make it much easier to distribute big software packages.
What about the BIOS?
Edit: Also, I would like to say that I am surprised by the amount of animosity present in this thread. The suggestion is a simple one – the ability to update resourcepacks in-game. Why are there so many against this? You think it makes for a bad workflow? Okay, that's your personal opinion. I know that we can all be more mature and above the pointless squabble. Let's see what Dan and Cloudy have to say on this issue and leave it at that.
Posted 18 July 2013 - 10:09 PM
Well, what are you doing with the bios? It all amounts to replacing values, so it's all doable, really. The suggestion isn't a bad one, but the vehemence that it's essential functionality is a little over the top.
Posted 18 July 2013 - 10:43 PM
Spoiler
all this time you didnt know you could put a folder in mods called ComputerCraft\lua\rom and CC would mount from itI still don't understand your logic behind this… Yes it would be really nice if the resource pack reloaded when it was changed, but there is all this complaining and b****ing for no reason, how you do stuff has not changed…
The old method of modifying the rom required you to unzip the mod, make the changes and then rezip it and then restart the client. The new method just extracts that process into another location, the process doesn't change it stays the same, just a new location that the process happens.
like seriously, the whole time you were arguing and you didnt know that?!? xD
that feature has been in CC from practically the beginning
<Cloudy> would now be a good time
<Cloudy> to tell people
<Cloudy> that in the svn it works with folders?
<Cloudy> or should I let people bitch more.
Posted 18 July 2013 - 11:25 PM
Yeah pixel is right, You can use that folder for what you want to do. The only thing I would like added into respacks would be the ability to patch bios.lua with the respack
Posted 19 July 2013 - 12:05 AM
Aww, PixelToast ruined the fun. Damn you PixelToast!
You can stop bitching now (unfortunately, I was enjoying it).
You can stop bitching now (unfortunately, I was enjoying it).