Alright, I'll forward that to them. Thanks.
Any chance we can get the AI-related discoveries from
this thread put into PyAI's documentation?
edit: Attempting to ctrl+z in PyAI does not revert changes successfully. Sometimes the text is deleted, and then the deleted text is pasted back in a bizarre way.
Post has been edited 1 time(s), last time on Jul 17 2017, 10:48 pm by Pr0nogo.
> python pyai.pyw
Traceback (most recent call last):
File "pyai.pyw", line 2, in <module>
from Libs.setutils import *
File "C:\Pelei\scbw_yms\Ohjelmia\PyMS\Libs\setutils.py", line 278, in <module>
if os.path.isdir(path):
NameError: name 'path' is not defined
PyMS is expecting installation registry keys to exist?
None.
PyMS and ProTRG developer
I use Atomic file access (write to a temporary file, and if that is fine, replace the existing file with the new temp one) to prevent save crashes from corrupting files, but it looks like in some cases my AtomicWriter is still "completing" with an empty file
I'll do a sweep and fix them all soon.
This should be fixed now.
All tabs seem to be working fine for me, except for Portrait which wasn't saving its edit state since I combined Idle and Talking portraits. I fixed the Portraits tab, and made some other tweaks as well. If you run into issues again, if you can try and remember as much detail about what you were doing, I can look into it again.
Literally making any change to units.dat, saving, and attempting to close the program reproduces it, but it doesn't do that on weapons, images, sprites, or flingy. If it does it on others I'll let you know.
Should be fixed now.
Any chance we can get the AI-related discoveries from
this thread put into PyAI's documentation?
Yep, I have plans to look into making updates for things from these threads:
Little known iscript/images.dat tricks.dat file unknownsDefining AI commands and functionsInformation on orders.dat fieldsedit: Attempting to ctrl+z in PyAI does not revert changes successfully. Sometimes the text is deleted, and then the deleted text is pasted back in a bizarre way.
Hmm, I'm not sure how much control I have over that. I'll look into it. Do you have some steps I could follow to reproduce the issue?
> python pyai.pyw
Traceback (most recent call last):
File "pyai.pyw", line 2, in <module>
from Libs.setutils import *
File "C:\Pelei\scbw_yms\Ohjelmia\PyMS\Libs\setutils.py", line 278, in <module>
if os.path.isdir(path):
NameError: name 'path' is not defined
PyMS is expecting installation registry keys to exist?
It shouldn't require them, but it does try to use them if they exist, it just had faulty logic. Should be fixed now.
Thanks!
Post has been edited 1 time(s), last time on Jul 18 2017, 1:29 pm by poiuy_qwert.
Hmm, I'm not sure how much control I have over that. I'll look into it. Do you have some steps I could follow to reproduce the issue?
Yes, select any group of AI, delete it, and then hit ctrl+Z a few times.
PyMS and ProTRG developer
Hmm, I'm not sure how much control I have over that. I'll look into it. Do you have some steps I could follow to reproduce the issue?
Yes, select any group of AI, delete it, and then hit ctrl+Z a few times.
These instructions are either not detailed enough (what is a "group of AI"?), or do not reproduce the issue consistently enough. I can't figure out the issue if I can't reproduce it. You must give me as much details as possible, every little thing from launching the program to the issue, so that it can be reproduced 100% of the time. It should be something like this completely fake example:
1) Open default files
2) Open the script XXXX
3) Find the first "wait"
4) Delete "it(" from the "wait(1)"
5) Add blah before the "wa1)" so its "blahwa1)"
6) Ctrl+z two times
7) I'm left with is "1)it(" instead of "wait(1)"
Open 'Brood Wars Terran 5 - Town A' in
this scriptClick on line 9 - 'build(1, Protoss Nexus, 150)'
Write 'xd' after 'Nexus' and 'adadad' before 'Protoss'
Ctrl+z a few times
You are left with 'build(1, adadarotos xd, 150)'
If you continue to ctrl+z, the entire script is erased.
Editing
these files with PyDAT is resulting in bizarre changes to the flingy.dat, where Scourge's flingy entry is being set to seemingly random entries. First it was Rhynadon, then it was Power Generator. I've hit 'reload entry' to fix it but there's no telling how long before it happens again. Worth noting is that those two graphic entries are ones that I've replaced in the mpq/exe, but I don't know if that helps figure out the issue.
PyMS and ProTRG developer
Open 'Brood Wars Terran 5 - Town A' in
this scriptClick on line 9 - 'build(1, Protoss Nexus, 150)'
Write 'xd' after 'Nexus' and 'adadad' before 'Protoss'
Ctrl+z a few times
You are left with 'build(1, adadarotos xd, 150)'
If you continue to ctrl+z, the entire script is erased.
I am able to reproduce the issue, I'll see what I can do.
Editing
these files with PyDAT is resulting in bizarre changes to the flingy.dat, where Scourge's flingy entry is being set to seemingly random entries. First it was Rhynadon, then it was Power Generator. I've hit 'reload entry' to fix it but there's no telling how long before it happens again. Worth noting is that those two graphic entries are ones that I've replaced in the mpq/exe, but I don't know if that helps figure out the issue.
This one is hard to reproduce. I seem to remember fixing something like this that Neiv reported... I have an idea that should get rid of these issues for good.
Thanks!
I just encountered an issue with PyTBL where trying to use the search function hard freezes the program with no error message. Where would I go to get diagnostics to send to you?
On another note, that PyAI crash happened again. At first I thought it was related to defining a unit that didn't exist in unitdef.txt (can we get an update to that to include all hero units, special buildings, etc.?) but it happened occasionally even with out doing that. The files were nearly identical to what you were using for the ctrl+z test, though obviously they would have been different if it had saved successfully.
PyMS and ProTRG developer
Open 'Brood Wars Terran 5 - Town A' in
this scriptClick on line 9 - 'build(1, Protoss Nexus, 150)'
Write 'xd' after 'Nexus' and 'adadad' before 'Protoss'
Ctrl+z a few times
You are left with 'build(1, adadarotos xd, 150)'
If you continue to ctrl+z, the entire script is erased.
I am able to reproduce the issue, I'll see what I can do.
This should be fixed now.
I just encountered an issue with PyTBL where trying to use the search function hard freezes the program with no error message. Where would I go to get diagnostics to send to you?
If no error dialog appears and there is nothing in the Logs folder, then the only thing you can do is try and reproduce the issue and/or give me detailed steps to reproduce it myself.
On another note, that PyAI crash happened again. At first I thought it was related to defining a unit that didn't exist in unitdef.txt (can we get an update to that to include all hero units, special buildings, etc.?) but it happened occasionally even with out doing that. The files were nearly identical to what you were using for the ctrl+z test, though obviously they would have been different if it had saved successfully.
If you can give me an aiscript.bin, bwscript.bin, and a script.txt which will reproduce the issue everytime I import it into them, I'll be able to look into the issue. Until I can reproduce it I'll poke around but i'm just fumblng in the dark and probably wont be able to figure it out
Also, was your bwscript.bin corrupted again this time or was it left alone?
Thanks!
Post has been edited 1 time(s), last time on Jul 19 2017, 4:16 am by poiuy_qwert.
bwscript.bin was corrupted, so I imagine it wouldn't have been too useful. I'm not sure what a feasible testing operation would be since it doesn't seem consistent with any specific action I'm doing, but in case it happens again I'll try to keep backups and remember exactly what I did last, saving after each script change.
PyMS and ProTRG developer
bwscript.bin was corrupted, so I imagine it wouldn't have been too useful.
It was corrupted again? Are you updated to at least PyMS 1.3.6, the file corruption should be fixed on that version+, if not i'll have to look into that again too...
I'm not sure what a feasible testing operation would be since it doesn't seem consistent with any specific action I'm doing, but in case it happens again I'll try to keep backups and remember exactly what I did last, saving after each script change.
Yeah thats probably your best bet. Maybe I can make a special version for you that will backup those things automatically on a crash, I'll look into that.
It says PyAI v2.5.1 on my end, the version I've been using all day (and the version it crashed with). It never prompted me for an update so I assume this is the latest version?
PyMS and ProTRG developer
It says PyAI v2.5.1 on my end, the version I've been using all day (and the version it crashed with). It never prompted me for an update so I assume this is the latest version?
Yeah that should have had the fix
I'll look at it again.
If I encounter it again I will let you know and do my best to remember to save at every turn as mentioned before. Thanks for looking into it again. This program is why I'm able to make incredibly complex AI.
PyMS and ProTRG developer
bwscript.bin was corrupted, so I imagine it wouldn't have been too useful.
It was corrupted again? Are you updated to at least PyMS 1.3.6, the file corruption should be fixed on that version+, if not i'll have to look into that again too...
It says PyAI v2.5.1 on my end, the version I've been using all day (and the version it crashed with). It never prompted me for an update so I assume this is the latest version?
Yeah that should have had the fix
I'll look at it again.
I can not reproduce the file corruption. I have force it to crash during save, even in the same way as your
original crash log, and the atomic writing works in keeping the original file safe. Are you sure the second crash was the same as the first one?
I didn't cross refernece the crashdumps but it also hasn't occurred yet with the latest version of PyAI, so maybe it has in fact been fixed and I just didn't update before.
ALL PRAISE YOUR SUPREME LORD CORBO
How about adding a "Open SC Tileset" button into PyTILE? What this button would do is open vanilla/bw tilesets, it should list them to you. This would make it far much simpler than having to extract the tilesets yourself. Either load from MPQ or have them come along wih PyMS
fuck you all
Internal error (no crash) in PyTILE when attempting to add
these bitmaps to
this tileset. I tried to do it one at a time, and after the error popped up, hitting the magnifying glass icon to look for the bitmaps again did nothing.
PyMS and ProTRG developer
How about adding a "Open SC Tileset" button into PyTILE? What this button would do is open vanilla/bw tilesets, it should list them to you. This would make it far much simpler than having to extract the tilesets yourself. Either load from MPQ or have them come along wih PyMS
Sounds like a good idea, I'll look into it.
Internal error (no crash) in PyTILE when attempting to add
these bitmaps to
this tileset. I tried to do it one at a time, and after the error popped up, hitting the magnifying glass icon to look for the bitmaps again did nothing.
Hmm, not sure how that bug snuck in there. I'll fix it when I get home, if you want to you can fix it yourself until then by removing ", graphics" from
this line so it is just "def select_path(self):"