Ren'Py 6.12.0 Pre-Released
- Aleema
- Lemma-Class Veteran
- Posts: 2677
- Joined: Fri May 23, 2008 2:11 pm
- Organization: happyB
- Tumblr: happybackwards
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
I had a name in a list called "étoile". I put a u in front (u"étoile") but the error persists ... >_<
edit: unrelated question, what's it take for Ren'Py to graduate to 7.0? =P
edit: unrelated question, what's it take for Ren'Py to graduate to 7.0? =P
-
- Veteran
- Posts: 253
- Joined: Fri Nov 14, 2008 7:59 pm
- Completed: Lots.
- Projects: Black Closet
- Organization: Slipshod
- Location: Behind you.
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
My workarounds only cover backansi's second bug, the first is in how Ren'Py 6.12 handles python blocks. (... which I probably should wait for PyTom to fix, instead of charging in blindly and poking the code until it appears to work... but it's only one little function, and it's getting in the way of testing everything ELSE in the secret project to see if it works in 6.12...)Aleema wrote:I had a name in a list called "étoile". I put a u in front (u"étoile") but the error persists ... >_<
*poke*
*poke*
Changing the offending function in ast.py to
Code: Select all
def get_hash(self):
try:
if self.hash is not None:
return self.hash
except:
pass
code = self.source
if isinstance(code, renpy.python.ast.AST):
code = renpy.python.ast.dump(code)
import encodings.utf_8
self.hash = chr(renpy.bytecode_version) + md5.md5(encodings.utf_8.encode(code)[0]).digest()
return self.hash
On the other hand, it was worth it, because now that the secret project compiles, I discover that the Linux libGLEW appears to be missing and OpenGL won't load as a result.
Nom nom nom nom nom LEAVES.
- PyTom
- Ren'Py Creator
- Posts: 16093
- Joined: Mon Feb 02, 2004 10:58 am
- Completed: Moonlight Walks
- Projects: Ren'Py
- IRC Nick: renpytom
- Github: renpytom
- itch: renpytom
- Location: Kings Park, NY
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Okay, I've released an update to the update server. You can access it by hitting shift+U while at the top screen of the 6.12 launcher.
The current update fixes three issues:
- Get_hash crashing horribly if a non-ASCII character is found in the file.
- Unicode characters not displaying properly in ATL blocks.
- libGLEW being omitted on Linux.
I'm now going to start looking into Jack's various bugs. (Especially for save problems, it would be helpful if I knew how to make the save file.)
EDIT: Oh, I'm pretty sure that DaFool's bug comes from dropping screens.rpy into a game with a script_version.rpy file. You can only use the new screens with a newer game - the definition of the screens changed a bit recently.
The current update fixes three issues:
- Get_hash crashing horribly if a non-ASCII character is found in the file.
- Unicode characters not displaying properly in ATL blocks.
- libGLEW being omitted on Linux.
I'm now going to start looking into Jack's various bugs. (Especially for save problems, it would be helpful if I knew how to make the save file.)
EDIT: Oh, I'm pretty sure that DaFool's bug comes from dropping screens.rpy into a game with a script_version.rpy file. You can only use the new screens with a newer game - the definition of the screens changed a bit recently.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom(When was the last time you backed up your game?)
Software > Drama • https://www.patreon.com/renpytom
- jack_norton
- Lemma-Class Veteran
- Posts: 4084
- Joined: Mon Jul 21, 2008 5:41 pm
- Completed: Too many! See my homepage
- Projects: A lot! See www.winterwolves.com
- Tumblr: winterwolvesgames
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Wait the bug is not on saving, but if I try to load a previous saved game (from a game with 6.11b). Should I upload a savegame ? (basically any savegame crashes)PyTom wrote: I'm now going to start looking into Jack's various bugs. (Especially for save problems, it would be helpful if I knew how to make the save file.)
- Aleema
- Lemma-Class Veteran
- Posts: 2677
- Joined: Fri May 23, 2008 2:11 pm
- Organization: happyB
- Tumblr: happybackwards
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Yayyy! Is fixed!
*it is for posts like this that there was a minimum character count required to post*
*it is for posts like this that there was a minimum character count required to post*
- PyTom
- Ren'Py Creator
- Posts: 16093
- Joined: Mon Feb 02, 2004 10:58 am
- Completed: Moonlight Walks
- Projects: Ren'Py
- IRC Nick: renpytom
- Github: renpytom
- itch: renpytom
- Location: Kings Park, NY
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
I've figured out the Planet Stronghold loading/saving problem.
The fundamental problem is that a Render is being placed into a variable or field. I'm not sure which one it is, but I'm pretty sure it's named myRender. This then gets saved to the save file, and when it reloads, a crash occurs.
To understand what's going on here, I need to explain why we have Renders in the first place. When displaying graphics, there is stuff we don't want to put in a save file. For example, OpenGL textures each have a number they get when they are loaded into memory. On each run, that number changes - so on one run, texture 17 could be a character, and on the next, a building. To deal with this, the screen is broken up into two things. Displayables represent the parts that can be saved, and Renders the parts that can't.
I made a change that allows Renders to be loaded into memory in 6.12. They still won't work - they never did - but they should at least load. Older code (with config.developer = False) will be able to save them, but when config.developer is True, you'll get an error instead.
This will be in the next update, which will be later today. (I want to have a go at those frame bugs, first.)
The fundamental problem is that a Render is being placed into a variable or field. I'm not sure which one it is, but I'm pretty sure it's named myRender. This then gets saved to the save file, and when it reloads, a crash occurs.
To understand what's going on here, I need to explain why we have Renders in the first place. When displaying graphics, there is stuff we don't want to put in a save file. For example, OpenGL textures each have a number they get when they are loaded into memory. On each run, that number changes - so on one run, texture 17 could be a character, and on the next, a building. To deal with this, the screen is broken up into two things. Displayables represent the parts that can be saved, and Renders the parts that can't.
I made a change that allows Renders to be loaded into memory in 6.12. They still won't work - they never did - but they should at least load. Older code (with config.developer = False) will be able to save them, but when config.developer is True, you'll get an error instead.
This will be in the next update, which will be later today. (I want to have a go at those frame bugs, first.)
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom(When was the last time you backed up your game?)
Software > Drama • https://www.patreon.com/renpytom
- jack_norton
- Lemma-Class Veteran
- Posts: 4084
- Joined: Mon Jul 21, 2008 5:41 pm
- Completed: Too many! See my homepage
- Projects: A lot! See www.winterwolves.com
- Tumblr: winterwolvesgames
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Ah...I know where it is!! Here, when you see a new enemy:
would be wiser to get rid of that completely (I can find a workaround, no problems for me)?
Code: Select all
label showenemy(enm):
python:
myDisplayable = im.Image("gfx/rpg/"+Enemy[enm][1]+".png")
myRender = renpy.render(myDisplayable, 800, 600, 0, 0)
sizes = myRender.get_size()
currentwidth=sizes[0]; currentheight = sizes[1]
xscale = 1.0
yscale = 1.0
if (currentwidth > 480):
xscale = float(480) / float(currentwidth)
if (currentheight > 500):
yscale = float(500) / float(currentheight)
if (xscale < yscale):
minscale = xscale
else:
minscale = yscale
newwidth = currentwidth * minscale
newheight = currentheight * minscale
scene black
show i_panel at Position(xpos=1.5,yalign=0.5)
transform enmshw:
xalign 0.5 yalign 0.5 alpha 0
linear 1.0 alpha 1.0
linear 1.0 xalign 0.0
pause 1.0
linear 1.0 zoom minscale
$ renpy.show("r_"+Enemy[enm][1],[enmshw])
show i_panel:
xpos 1.5 yalign 0.5
linear 1.5 xalign 0.0
image test:
contains:
Null()
pause 2.0
xalign 0.9 yalign 0.0
Text(Enemy[enm][2],style="bix",size=40,slow_cps=8,slow=True)
contains:
Null()
pause 3.0
xalign 0.5 yalign 0.97
Text("click to continue",style="bix",size=32,slow_cps=8,slow=True)
show test
transform blink(d):
alpha 0
pause d
linear 0.5 alpha 1.0
python:
with ui.vbox(-2,xmaximum=500,xfill=True,xpos=470,ypos=150):
ui.at(blink(2))
ui.text("Hit Points: "+str(Enemy[enm][3]),size=25,style="bix2")
ui.at(blink(2.4))
ui.text("HP Regen: "+str(Enemy[enm][19])+"/turn",size=25,style="bix2")
ui.at(blink(2.8))
ui.text("XP When Killed: "+str(Enemy[enm][18]),size=25,style="bix2")
ui.at(blink(3.2))
ui.text("Attack: "+DmgT[Enemy[enm][5]],size=25,style="bix2")
ui.at(blink(3.6))
ui.text("Damage: ("+str(Enemy[enm][6])+"-"+str(Enemy[enm][7])+") x"+str(Enemy[enm][8]),size=25,style="bix2")
ui.at(blink(4.0))
ui.text("Armor Rating:",size=25,style="bix2")
with ui.vbox(-2,xmaximum=500,xfill=True,xpos=760,ypos=150):
ui.at(blink(2.2))
ui.text("Skill Points: "+str(Enemy[enm][4]),size=25,style="bix2")
ui.at(blink(2.6))
ui.text("SP Regen: "+str(Enemy[enm][20])+"/turn",size=25,style="bix2")
ui.at(blink(2.8))
ui.text("Critical Hit: "+str(Enemy[enm][17])+"%",size=25,style="bix2")
ui.at(blink(3.0))
ui.text("Evasion: "+str(Enemy[enm][15])+"%",size=25,style="bix2")
ui.at(blink(3.4))
ui.text("Accuracy: "+str(Enemy[enm][9])+"%",size=25,style="bix2")
## ui.at(blink(3.8))
## ui.text("x Rate of Fire: "+str(Enemy[enm][8]),size=25,style="bix2")
for i in range(5):
ui.at(blink(4.2+i*0.15))
ui.text(str(Enemy[enm][10+i])+" vs "+DmgT[i],size=25,style="bix2")
with ui.vbox(-2,xmaximum=530,xfill=True,xpos=470,ypos=480):
ui.at(blink(5.4))
ui.text("Special Move: "+EnemySk[Enemy[enm][16]][2]+" ("+str(EnemySk[Enemy[enm][16]][3])+"sp)",size=25,style="bix2")
ui.at(blink(5.6))
ui.text(EnemySk[Enemy[enm][16]][1],size=22,style="bix2")
renpy.pause()
return
- PyTom
- Ren'Py Creator
- Posts: 16093
- Joined: Mon Feb 02, 2004 10:58 am
- Completed: Moonlight Walks
- Projects: Ren'Py
- IRC Nick: renpytom
- Github: renpytom
- itch: renpytom
- Location: Kings Park, NY
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Yes. You probably should just do:
You should probably also get rid of myRender if you load it, using code like:
Code: Select all
label showenemy(enm):
python:
currentwidth, currentheight = renpy.image_size("gfx/rpg/"+Enemy[enm][1]+".png")
# ...
Code: Select all
label after_load:
$ myRender = None
return
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom(When was the last time you backed up your game?)
Software > Drama • https://www.patreon.com/renpytom
- jack_norton
- Lemma-Class Veteran
- Posts: 4084
- Joined: Mon Jul 21, 2008 5:41 pm
- Completed: Too many! See my homepage
- Projects: A lot! See www.winterwolves.com
- Tumblr: winterwolvesgames
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Cool thanks a lot, will add this. I'd like to ship PS with the latest version of Renpy so will run also on netbooks, once the frame bug is fixed
- PyTom
- Ren'Py Creator
- Posts: 16093
- Joined: Mon Feb 02, 2004 10:58 am
- Completed: Moonlight Walks
- Projects: Ren'Py
- IRC Nick: renpytom
- Github: renpytom
- itch: renpytom
- Location: Kings Park, NY
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
I've pushed out 6.12.0b, as a shift+U update, download, and Android package. This fixes all the bugs above, except for DaFool's one, which is almost certainly caused by an incorrect script_version somewhere.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom(When was the last time you backed up your game?)
Software > Drama • https://www.patreon.com/renpytom
Re: Ren'Py 6.12.0 Pre-Released
I found a typo.
Code: Select all
AttributeError: 'Show' object has no attribute 'scren'
------
#00screen.py
class Show(Action):
#....
def predict(self):
renpy.predict_screen(self.scren, **self.kwargs)
- PyTom
- Ren'Py Creator
- Posts: 16093
- Joined: Mon Feb 02, 2004 10:58 am
- Completed: Moonlight Walks
- Projects: Ren'Py
- IRC Nick: renpytom
- Github: renpytom
- itch: renpytom
- Location: Kings Park, NY
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Fixed. Thanks!
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom(When was the last time you backed up your game?)
Software > Drama • https://www.patreon.com/renpytom
Re: Ren'Py 6.12.0 Pre-Released
I just deleted script_version.rpy and rpyc It doesn't seem to be looking for it anyway.PyTom wrote:I've pushed out 6.12.0b, as a shift+U update, download, and Android package. This fixes all the bugs above, except for DaFool's one, which is almost certainly caused by an incorrect script_version somewhere.
- jack_norton
- Lemma-Class Veteran
- Posts: 4084
- Joined: Mon Jul 21, 2008 5:41 pm
- Completed: Too many! See my homepage
- Projects: A lot! See www.winterwolves.com
- Tumblr: winterwolvesgames
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
Maybe it's not really a renpy bug. However behaviour changed vs last version. I got this crash:
in the armory inventory, it can happen that I have no items on the left list. Before it was working (showing nothing), now it crashes. I think would be cool if instead of crashing because can't find a child, maybe renpy would add something like a ui.null() or something so that it doesn't crash? after all if people forget to add a ui widget they will noticed it because the layout should be messed up, but at least not have a crash
edit: actually crashed even before, sorry
Code: Select all
Exception: Widget <renpy.display.layout.Window object at 0x10499C30> expects a child.
While running game code:
- script call at line 75 of C:\- indie dev -\games\renpy.new\Planet Stronghold/game/mapmoves.rpy
- script at line 1732 of C:\- indie dev -\games\renpy.new\Planet Stronghold/game/data.rpy
- python at line 1804 of C:\- indie dev -\games\renpy.new\Planet Stronghold/game/data.rpy.
-- Full Traceback ------------------------------------------------------------
File "C:\- indie dev -\games\renpy\renpy\bootstrap.py", line 276, in bootstrap
File "C:\- indie dev -\games\renpy\renpy\main.py", line 320, in main
File "C:\- indie dev -\games\renpy\renpy\main.py", line 93, in run
File "C:\- indie dev -\games\renpy\renpy\execution.py", line 259, in run
File "C:\- indie dev -\games\renpy\renpy\ast.py", line 588, in execute
File "C:\- indie dev -\games\renpy\renpy\python.py", line 957, in py_exec_bytecode
File "C:\- indie dev -\games\renpy.new\Planet Stronghold/game/data.rpy", line 1804, in <module>
File "C:\- indie dev -\games\renpy\renpy\display\layout.py", line 193, in __exit__
File "C:\- indie dev -\games\renpy\renpy\ui.py", line 327, in context_exit
File "C:\- indie dev -\games\renpy\renpy\ui.py", line 308, in close
File "C:\- indie dev -\games\renpy\renpy\ui.py", line 148, in close
Exception: Widget <renpy.display.layout.Window object at 0x10499C30> expects a child.
While running game code:
- script call at line 75 of C:\- indie dev -\games\renpy.new\Planet Stronghold/game/mapmoves.rpy
- script at line 1732 of C:\- indie dev -\games\renpy.new\Planet Stronghold/game/data.rpy
- python at line 1804 of C:\- indie dev -\games\renpy.new\Planet Stronghold/game/data.rpy.
Ren'Py Version: Ren'Py 6.12.0b
edit: actually crashed even before, sorry
Last edited by jack_norton on Mon Jan 31, 2011 5:29 am, edited 1 time in total.
- jack_norton
- Lemma-Class Veteran
- Posts: 4084
- Joined: Mon Jul 21, 2008 5:41 pm
- Completed: Too many! See my homepage
- Projects: A lot! See www.winterwolves.com
- Tumblr: winterwolvesgames
- Contact:
Re: Ren'Py 6.12.0 Pre-Released
I got an even more fun one:
cool, Ren'Py is becoming a sort of AI that can understand when has memory leaks!
Code: Select all
I'm sorry, but an uncaught exception occurred.
Exception: 1 Renders are alive at shutdown. This is probably a memory leak bug in Ren'Py.
While running game code:
-- Full Traceback ------------------------------------------------------------
File "C:\- indie dev -\games\renpy\renpy\bootstrap.py", line 276, in bootstrap
File "C:\- indie dev -\games\renpy\renpy\main.py", line 334, in main
File "render.pyx", line 93, in renpy.display.render.check_at_shutdown (render.c:1480)
Exception: 1 Renders are alive at shutdown. This is probably a memory leak bug in Ren'Py.
While running game code:
Ren'Py Version: Ren'Py 6.12.0b
Who is online
Users browsing this forum: No registered users