Hyphen-ated / RebirthItemTracker

Uses the log.txt file to track item pickups in Binding of Isaac: Rebirth.
BSD 2-Clause "Simplified" License
121 stars 26 forks source link

Fixed Bug95 ported code to python3 #133

Closed imsjrhowa closed 6 years ago

imsjrhowa commented 7 years ago

The problem was that Tk getting started after pygame caused crash in the SDL layer. The change was simply creating a Tk view before pygame, and when options is opened we used the Tk view that was already created.

imsjrhowa commented 7 years ago

Note: In options_picker I needed to comment out line 513 processing network results. OSX does not implement "qsize". This will need to be reworked with something more portable.

I do have a fix for it but I have not been able to test it.. the track server "http://isaacitemtracker.com:8080" doesn't seem to be working.

Hyphen-ated commented 7 years ago

The server is working, it just doesn't say anything useful at the base URL. See: http://isaacitemtracker.com:8080/tracker/api/userlist

imsjrhowa commented 7 years ago

ok, I have it working now as well.. I can update the pull request.

imsjrhowa commented 7 years ago

Updated

Hyphen-ated commented 6 years ago

hey, sorry I've left this PR sitting unmerged for a long time. there are several places where you just commented out pieces of code, or changed things in ways that look incorrect, and I didn't feel like putting the effort into figuring out why you did that, or fixing those things. I don't care very much about upgrading to python 3 so it didn't seem worth it.

I should have merged in the tk/pygame crash fix months ago though. I did that that just now

imsjrhowa commented 6 years ago

I understand you not wanting to upgrade to python3 thanks for pulling in the fix.

Hyphen-ated commented 6 years ago

unfortunately the fix wasn't enough. I had somebody else try it on osx for me, we had a few cycles of him reporting errors and me pushing code to try and fix them. we got to the following point and I decided to stop trying for now and put in the readme that it doesn't work on mac.

2017-12-28 17:42:24 Traceback (most recent call last):
  File "./item_tracker.py", line 243, in main
    rt.run()
  File "./item_tracker.py", line 85, in run
    event_result = drawing_tool.handle_events()
  File "./view_controls/view.py", line 168, in handle_events
    self.optionPicker.run()
  File "./option_picker.py", line 507, in run
    self.root.after(100, self.process_network_results())
  File "./option_picker.py", line 192, in process_network_results
    while self.network_queue.qsize():
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/queues.py", line 143, in qsize
    return self._maxsize - self._sem._semlock._get_value()
NotImplementedError

was this related to why you decided to try porting to python 3 as part of fixing some bug?

if I ever get us off pygame so we're just using tk for all the gui stuff, I might do a python 3 migration at the same time.

imsjrhowa commented 6 years ago

Im working on a new update for this that works on Python2.7 I have fixed the above crash.

imsjrhowa commented 6 years ago

Going to create a new pull request that is not Python3 and works on mac.