Staredit Network > Forums > Modding Discussion > Topic: PyMS - Download, Support, and Maintenance
PyMS - Download, Support, and Maintenance
Jan 10 2019, 9:08 pm
By: poiuy_qwert  

Jan 19 2019, 8:31 am Pr0nogo Post #21



Added a few new issues related to PyMPQ. Also found some problems with PyDAT but haven't found time to reproduce them:

-"sometimes" changing info in units.dat doesn't mark the file as unsaved (I changed air weapon and air max hits in alan schezar's entry).
-if you edit an entry and then copy & paste it, it pastes the values before your edits (may only happen after saving, only found it in weapons.dat so far while editing twin autocannons and pasting over the hero variant of the attack)
-after selecting orderid 154 in orders.dat, moving up and down with arrow keys updates id selected, but doesn't change loaded stats (you have to left click on the entry to update the stats)




Jan 23 2019, 2:55 am Cool-Knight Post #22



PyMPQ crashes when I extract any files.
Error log.
Code
Exception in Tkinter callback
Traceback (most recent call last):
 File "C:\Python27\lib\lib-tk\Tkinter.py", line 1537, in __call__
   return self.func(*args)
 File "D:\StarCraft Stuff\PyMS-master\PyMS-master\PyMPQ.pyw", line 1087, in extract
   r = SFileReadFile(fh)
 File "D:\StarCraft Stuff\PyMS-master\PyMS-master\Libs\SFmpq.py", line 379, in SFileReadFile
   if _SFmpq.SFileReadFile(file, byref(data, total_read), read-total_read, byref(r), None):
WindowsError: exception: access violation reading 0xFFFFFFFFFA6678CF


Also: There is a tiny bug in PYAI edit.
If you miss type any of these = crash.

Code
--<TMCx 0000 (Forgot the the other 2 dashes. And had it goto --TMXc 0000 with no 2 dashes. = crash.
And/or crash if you don't have anything for goto = crash.




I make StarCraft BroodWar Maps! Servers I'm On: USEast/USWest!

You can also find me at. My Website! My Akas: SHANE-009

Follows and obey SEN Rules: The Rules.

Jan 23 2019, 3:16 am Pr0nogo Post #23



The PyMPQ crash is from exporting sound files imported with WinMPQ. At least for me, exporting any other file works fine. I reported this earlier this week: https://github.com/poiuyqwert/PyMS/issues/116

PyAI shouldn't behave that way, that's strange. It should just warn you of syntax errors. I don't use that build's PyAI so I don't know if it's reproducible.




Mar 18 2019, 6:52 pm Corbo Post #24

ALL PRAISE YOUR SUPREME LORD CORBO

I found easier to get PIL from this link and not from anywhere you posted in your documentation or official python site:

easy installation too

https://www.pythonware.com/products/pil/



fuck you all

Apr 5 2019, 10:18 pm Pr0nogo Post #25



Just had a terrible experience (while streaming) where I attempted to open this bmp with PyGRP and was hardlocked, requiring me to cut power to my PSU and restart. This is obviously not great for hardware life expectancy and I've had to do this so many times with PyMS that I feel compelled to remind you that there are still several issues with the program that result in hardlocks, at least on win10. When reproducing them I encourage you to do so in a virtual machine to save your hardware, but I'm at my wits' end at this point.

PyDAT also does not show graphical previews (icons, grps) on my machine, not sure what's wrong with my install as it does with Neiv's fork and did with older versions of PyMS.

EDIT: Fixed the PyDAT error. The fault seemed to be in the settings file, which had // instead of \ in the filepaths. I don't know why this would cause issues but changing them to use \ resolved the problem.

Post has been edited 1 time(s), last time on Apr 8 2019, 11:08 am by Pr0nogo.




Apr 13 2019, 2:18 am Kolokol Post #26



Whenever I try to export a frame from a unit grp (Like the Valkyrie, for instance), I get the following error:
Exception in Tkinter callback
Traceback (most recent call last):
File "Tkinter.pyc", line 1404, in __call__
File "PyGRP.pyw", line 702, in exports
File "PyGRP.pyw", line 18, in grptobmp
TypeError: isstr() takes exactly 1 argument (2 given)

And the exporting fails, though the frames can be viewed just fine while they are inside the .grp. How do I resolve this?



None.

Apr 13 2019, 3:28 pm poiuy_qwert Post #27

PyMS and ProTRG developer

Quote from Kolokol
Whenever I try to export a frame from a unit grp (Like the Valkyrie, for instance), I get the following error:
Exception in Tkinter callback
Traceback (most recent call last):
File "Tkinter.pyc", line 1404, in __call__
File "PyGRP.pyw", line 702, in exports
File "PyGRP.pyw", line 18, in grptobmp
TypeError: isstr() takes exactly 1 argument (2 given)

And the exporting fails, though the frames can be viewed just fine while they are inside the .grp. How do I resolve this?
It looks like you have an old version of PyMS (you can check Libs/versions.json and compare it to the latest here: https://github.com/poiuyqwert/PyMS/blob/master/Libs/versions.json )

You should download the latest version from github (direct link for zip download: download)




Apr 15 2019, 6:13 am Pr0nogo Post #28



I'm going to be replacing an entire extended tileset's graphics soon and want to be able to preserve pathing, height, and ramp flags (basically minitile settings). How would I do this using the latest pytile?

edit 1: seems like what I want is in the megatile explorer, but selecting every megatile is really tricky when the display appears completely messed up, and when it doesn't seem to react to the accurate cursor position. I have no idea if I've selected all tiles or not.


edit 2: ok, seems like even though the display is wrong, clicking the last tile does select the last tile, so I was able to export the settings for all megas at once. However, exporting the graphics for all megas produced a file that couldn't be opened by photoshop or irfanview. No problem, I'll export all the group graphics, modify them, and reimport them. Attempting to export all groups at once freezes pytile (presumably because it is taking an astronomically-long time to process all the groups), so I opted to do it in phases rather than wait. More micromanagement but better than chancing on a botched export. After that, I edited and reimported (in the same phases, just in case), only to find that megatiles are sorted by order of import. At first I sought to reimport my tiles in the same manner I presumed blizzard hard, only to discover that they in fact had not followed a simple descending order, as evidenced by mud tiles mixed in with doodad tiles. I also discovered tiles that were nowhere in the tileset, old ones that had been overwritten (or so I had thought), and thus were nowhere to be found in the new version I was using as they were never imported in the first place. It was at this point that I gave up trying to match the megas up to the settings file and have since resigned myself to copying the flags by hand - something I would really rather not have to do, but see no way around at this point.

TLDR: megatile selector is visually inaccurate, megatile graphical exporter doesn't appear to work when processing large amounts of megas in my (very limited) tests, group graphical exporter needs some sort of progress bar so you know it isn't just dead in the water, scrolling issue is really annoying and caused me countless restarts in the middle of trying to do this, and I need more caffeine.

Post has been edited 2 time(s), last time on Apr 15 2019, 12:50 pm by Pr0nogo.




Apr 17 2019, 1:39 am Kolokol Post #29



Quote from poiuy_qwert
Quote from Kolokol
Whenever I try to export a frame from a unit grp (Like the Valkyrie, for instance), I get the following error:
Exception in Tkinter callback
Traceback (most recent call last):
File "Tkinter.pyc", line 1404, in __call__
File "PyGRP.pyw", line 702, in exports
File "PyGRP.pyw", line 18, in grptobmp
TypeError: isstr() takes exactly 1 argument (2 given)

And the exporting fails, though the frames can be viewed just fine while they are inside the .grp. How do I resolve this?
It looks like you have an old version of PyMS (you can check Libs/versions.json and compare it to the latest here: https://github.com/poiuyqwert/PyMS/blob/master/Libs/versions.json )

You should download the latest version from github (direct link for zip download: download)
Ugh, how do you run .pyw files?



None.

Apr 17 2019, 2:11 am Pr0nogo Post #30



They should run automatically if you have python 2.7 installed.




Apr 19 2019, 2:36 pm Pr0nogo Post #31



Back in 2017 you posted this, explaining the use of @suppress_all and @suppress_next_line. These just get commented out in the ASC3->PyAI conversion and when uncommented they throw errors in PyAI, so clearly I'm doing something wrong when using them. Is there any other documentation on this? I could also mark all new units as @spellcasters in unitdef if there are no drawbacks to it, but I'd prefer to not have to do that.




Apr 19 2019, 4:03 pm Nekron Post #32



suppressions are and always have been in aibin.py




Apr 19 2019, 4:48 pm Pr0nogo Post #33



You'll need to be a bit more specific.




Apr 19 2019, 5:06 pm Nekron Post #34



Oh, nevermind, I was wrong, it works fine script-level too
example
Quote
@suppress_all(ga_military)
@suppress_all(gg_military)
Suppresses warnings of
Quote
defensebuild_gg(1, shuttle)
defenseuse_gg(1, shuttle)
defensebuild_ga(1, shuttle)
defenseuse_ga(1, shuttle)
having no ground weapon
Or if you only want to suppress the warning for a specific line, @suppress_next_line(ga_military)

It doesn't work when translated from ASC3(which I agree is stupid, should probably work with @suppress_next_line %1 formatting), you need to add it manually or readd it from commented out. It also doesn't save between compilings, but it doesn't give any warnings - except maybe if P_Q broke it with a new version, I wouldn't know, I'm only using neiv's fork

Post has been edited 1 time(s), last time on Apr 19 2019, 5:17 pm by Nekron.




Apr 19 2019, 5:15 pm Pr0nogo Post #35



Thanks. Would be nice for a blanket suppression of everything, like supress_all(all) (which is redundant but w/e).




Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[03:18 am]
Pr0nogo -- it's always unlogged me after 180 days
[02:59 am]
O)FaRTy1billion[MM] -- wtf why did i have to log in
[08:23 pm]
NudeRaider -- Moose
Moose shouted: it is of higher quality and caliber
jesus you must be really bored to have read that shit. Or ... you actually enjoyed it. AND HAD FUN?!
[08:22 pm]
NudeRaider -- NudeRaider
NudeRaider shouted: lil-Inferno listen here you shit ... :P actually just read some of my comments. Many of them are universal and have nothing to do with mapping vs modding. That just happens to be our example.
tl;dr your priorities are not better than mine
[08:21 pm]
NudeRaider -- lil-Inferno
lil-Inferno shouted: Given your idea of fun is arguing the merits of mapping vs. modding (two completely different things) in a game that's old enough to drink legally, ya, probably
listen here you shit ... :P actually just read some of my comments. Many of them are universal and have nothing to do with mapping vs modding. That just happens to be our example.
[08:18 pm]
lil-Inferno -- Given your idea of fun is arguing the merits of mapping vs. modding (two completely different things) in a game that's old enough to drink legally, ya, probably
[08:17 pm]
lil-Inferno -- lmfao
[08:17 pm]
Moose -- it is of higher quality and caliber
[08:17 pm]
Moose -- ya
[08:11 pm]
NudeRaider -- so now your fun is better than mine? :D
Please log in to shout.


Members Online: Roy, jjf28, Dem0n