Pink Petal Games

PyTFall => PyTFall: General information => Topic started by: mijh on June 01, 2013, 12:45:43 AM

Title: <-- Archived -->
Post by: mijh on June 01, 2013, 12:45:43 AM
Xela: Repository info has been updated. Full project is now on one module.
---------------------------------------------------------------------


Hi there, I wanted to summarise information on how to grab, talk about, or contribute to PytFall.

Development is currently extremely early on, using git on sourceforge (https://sourceforge.net/projects/sbpytfall/). Currently, it is not guaranteed to be stable at any time :)

Running PytFall


To grab pytfall, you will need to install Git (http://git-scm.com).
Then you will need to download and unzip Renpy (http://www.renpy.org/latest.html).

In your renpy folder, right click somewhere, select "Git Bash", and enter this command:

Code: [Select]
git clone git://git.code.sf.net/p/sbpytfall/code sbpytfall-code

This should clone the latest master of PytFall. You can then run Renpy, and select the pytfall game to launch.

To update PytFall, open Git Bash in the pytfall folder and run

Code: [Select]
git pull

Devloping PytFall


PytFall is developed using two separate git repositories, one for the main game code, and one for the game's content / data.

To submit commits to either, you need to know how to use git and how to set it up properly for sourceforge (http://sourceforge.net/), as well as have an account there. You'll need to use a different git url to the one shown above to be able to push back to sourceforge.

Here (https://www.youtube.com/watch?v=MM_OPHEnqS4) is a video on how to quickly set up git to be able to push to sourceforge, at least for windows.

Atlassian have an awesome git tutorial here (https://www.atlassian.com/git/tutorial). For Windows and Mac they also have an excellent gui, here (http://www.sourcetreeapp.com/).

You should ask Xela or Mijh about getting development privileges for the project. You can ask to commit to either repository or both, depending on which side of the project you wish to work on. Otherwise you can always hack on it in the meantime and send us a git pull request.

Currently we aim to have the master branch run the game properly.

Discussing project


Apart from giving thoughts in these forums, if you'd like to get immediate feedback or discuss something in real time, we have a chat channel on OFTC IRC server.

You should mention someone's name or /query them (private msg) to notify them when you talk.

Here is a video on how to set up and connect to IRC:

https://www.youtube.com/watch?v=TCdolm7PaFU (https://www.youtube.com/watch?v=TCdolm7PaFU)

Hope to see you on #PytFall :D
Title: Re: -PyTFall- General Information
Post by: Xela on June 01, 2013, 04:01:48 AM
Nice one, I should add that we also have a dropbox shared folder for submitting content (if anyone wish to help but knows nothing about scripting).
Title: Re: -PyTFall- General Information
Post by: rudistoned on June 01, 2013, 09:39:19 PM
Sorry for being such a noob, but renpy keeps throwing really weird errors at me.

My goal: run the game, click "Start Game" and not receive a traceback

My platform: Windows 7 64 bit

What I did:

If I repeat step 7 now, git pull reports "Already up-to-date". I'm pretty sure my working copy is identical to the latest revision of the master branch in the SF repo. However, when I load the game via "Launch project" in the renpy launcher and when I then click "Start Game" from PytFalls main menu, the game crashes:
Code: [Select]
While running game code:
  File "game/script.rpy", line 2, in script
  File "game/script.rpy", line 7, in python
  File "game/library/functions.rpy", line 24, in python
  File "game/library/functions.rpy", line 81, in python
  File "game/library/common.rpy", line 168, in python
AttributeError: 'Brothel' object has no attribute 'init'

If I then hit "Reload" the game crashes saying:
Code: [Select]
While running game code:
  File "game/script.rpy", line 2, in script call
  File "game/library/screens/pyt - screens - mainscreen.rpy", line 5, in script
  File "game/library/screens/pyt - screens - mainscreen.rpy", line 8, in python
  File "game/library/screens/pyt - screens - mainscreen.rpy", line 16, in python
NameError: name 'calendar' is not defined

What am I doing wrong?


Edit: Forgot one step
Title: Re: -PyTFall- General Information
Post by: Xela on June 02, 2013, 03:22:21 AM
Sorry for being such a noob, but renpy keeps throwing really weird errors at me.

My goal: run the game, click "Start Game" and not receive a traceback

My platform: Windows 7 64 bit

What I did:

  • installed Git 1.8.1.2
  • unzipped Ren'Py 6.15.4.320
  • cloned the repo using the command provided in the dropbox file
  • implemented two commits in the readability branch
  • pushed those commits
  • changed back  to my local master branch
  • executed "git pull" from the pytfall directory
  • executed "git submodule update" from the pytfall directory
If I repeat step 7 now, git pull reports "Already up-to-date". I'm pretty sure my working copy is identical to the latest revision of the master branch in the SF repo. However, when I load the game via "Launch project" in the renpy launcher and when I then click "Start Game" from PytFalls main menu, the game crashes:
Code: [Select]
While running game code:
  File "game/script.rpy", line 2, in script
  File "game/script.rpy", line 7, in python
  File "game/library/functions.rpy", line 24, in python
  File "game/library/functions.rpy", line 81, in python
  File "game/library/common.rpy", line 168, in python
AttributeError: 'Brothel' object has no attribute 'init'

If I then hit "Reload" the game crashes saying:
Code: [Select]
While running game code:
  File "game/script.rpy", line 2, in script call
  File "game/library/screens/pyt - screens - mainscreen.rpy", line 5, in script
  File "game/library/screens/pyt - screens - mainscreen.rpy", line 8, in python
  File "game/library/screens/pyt - screens - mainscreen.rpy", line 16, in python
NameError: name 'calendar' is not defined

What am I doing wrong?

Not being an expert I can only guess:

1) Still .rpyc files issue.

2) You have not merged origin/master into your local master branch.
Title: Re: -PyTFall- General Information
Post by: rudistoned on June 02, 2013, 10:53:32 AM
I did delete the rpyc files, but forgot to mention that in my post. Sorry.

AFAIK, the git pull command merges the changes it pulls into the current branch, which was my local master at the time.
When I display the history of my master branch using gitk, the line for the latest revision looks like this:
(yellow dot) - master - remotes/origin/master - Fixed two more bugs

It seems to me the merge was successful.

Any other ideas? I appreciate the help.
Title: Re: -PyTFall- General Information
Post by: Xela on June 02, 2013, 12:20:04 PM
I did delete the rpyc files, but forgot to mention that in my post. Sorry.

AFAIK, the git pull command merges the changes it pulls into the current branch, which was my local master at the time.
When I display the history of my master branch using gitk, the line for the latest revision looks like this:
(yellow dot) - master - remotes/origin/master - Fixed two more bugs

It seems to me the merge was successful.

Any other ideas? I appreciate the help.

I use GUI... When I pull, nothing merges. I have to merge master branch I pulled from origin to my local one to get the changes. Better ask Matt about this...
Title: Re: -PyTFall- General Information
Post by: mijh on June 02, 2013, 03:14:38 PM
To be clear, if this directory path exists, you should have successfully cloned the project:

renpy/pytfall/game/content/db

The latest commit as i post is 62a89d1cc623432099c7b80f1646af04ddd167a2

I just did a fresh clone following my steps and the game ran successfully. I am running Linux 64 bits, I believe Xela is running Windows

Make sure you are indeed running the master branch-

Code: [Select]
git checkout master
git pull
Title: Re: -PyTFall- General Information
Post by: rudistoned on June 03, 2013, 12:19:12 AM
@Xela
The GUI that came with my Git package only offers the fetch command, not the pull command. Pull is a combined fetch and merge operation, that's why new commits are automatically merged for me (if there are no conflicts). If you are doing in fact a fetch and not a pull that would explain why you have to merge afterwards.

@mijh
"renpy/pytfall/game/content/db" exists and contains four xml files (buildings, items, map and traits.xml)
I confirmed the identity of the SHA1 IDs with a == of python strings, which returned True
"git checkout master" reports "Already on 'master'"
"git pull" reports "Already up-to-date."

Thank you for your help. What else could have gone wrong?

I still get the same error on Start New Game. I will get a new clone of the repo, following the instructions in the opening post. Let's see how that goes.

If you have any ideas that I could try to solve my problems, please post them.

Thank you :-)

UPDATE: I extracted a new copy of renpy, cloned the repo based on the instructions in the opening post, and received the same error on "Start new game" :-(
Title: Re: -PyTFall- General Information
Post by: mijh on June 03, 2013, 01:29:58 AM
I just did a new download/unzip of renpy, fresh clone in git, on Windows 8 64 bit.

I can't use renpy.py or renpy.sh to start it in windows (I guess this is because I have a system python on my path), but renpy.exe starts and runs the game perfectly.

I'd suggest uninstalling any system python you have installed and deleting any copies you have of the game and renpy on your system, and then do a fresh download clone. Use git bash, not a gui.
Please report back exact error.

Brothel objects should definitely have an init attribute, it is one of their methods, defined on line 119 in classes - locations.rpy


BTW: I'd suggest idling on IRC (i.e staying in the client), so we can talk when we are both on. I missed your messages twice unfortunately. My client will notify me if you mention my name or send me a private message (so please do that next time!), most IRC clients won't notify on a normal channel message though, because they'd constantly be highlighted by busy channels.
Title: Re: -PyTFall- General Information
Post by: Xela on June 03, 2013, 01:48:15 AM
@Xela
The GUI that came with my Git package only offers the fetch command, not the pull command. Pull is a combined fetch and merge operation, that's why new commits are automatically merged for me (if there are no conflicts). If you are doing in fact a fetch and not a pull that would explain why you have to merge afterwards.

@mijh
"renpy/pytfall/game/content/db" exists and contains four xml files (buildings, items, map and traits.xml)
I confirmed the identity of the SHA1 IDs with a == of python strings, which returned True
"git checkout master" reports "Already on 'master'"
"git pull" reports "Already up-to-date."

Thank you for your help. What else could have gone wrong?

I still get the same error on Start New Game. I will get a new clone of the repo, following the instructions in the opening post. Let's see how that goes.

If you have any ideas that I could try to solve my problems, please post them.

Thank you :-)

UPDATE: I extracted a new copy of renpy, cloned the repo based on the instructions in the opening post, and received the same error on "Start new game" :-(

Man, I swear that I got exactly the same Error because local and remote master branches were not properly merged. Try deleting all .rpyc files, delete the bytecode.rpyb and simply try to check out into the remote/master branch and try running the game. Also make sure non of the files is open at that time, maybe your text editor is preventing upgrades (mine seems to be ok with it...)

Otherwise, I've NEVER heard of an issue with filepath due to Python being installed. If all fails, might be simpler for me or Matt to sync with master branch and pass freshly upgraded copy of the game through dropbox.
Title: Re: -PyTFall- General Information
Post by: rudistoned on June 03, 2013, 02:00:52 AM
Thank you so much for mentioning the system python installation! The game runs now :-)

What I did:

Remove my Python 2.7 install from the system PATH.
Rename the C:\Python27 folder, so the python executable would not be found easily.
Rename the C:\Python26 folder, so the python executable would not be found easily.
Redownload renpy and unzip it.
Move my fresh clone of the repo into the renpy folder.
Launch renpy via renpy.exe

So the problem definitely was one of my two Python installations. That's very strange IMHO, as renpy brings it's own python interpreter AFAIK. Even stranger, I undid changes 1-3 (added Python 2.7 to the system PATH again and renamed the python folders to their original names), but I can't reproduce my original error now. It seems to me that renpy, possibly on first startup, checks if the system provides a python interpreter and only uses its own if no system installation of python can be found.

In any case, thank you so much for you help and also for this thread. I already saw the changes you made in the OP regarding IRC and will /query you the next time I'm there :-)


@Xela
Sorry, but I'm sure the system python installations were the problem. I used the exact same repository that produced said AttributeError after I renamed my python folders and removed it from the system PATH and it suddenly worked. Maybe the problem was that I had two Python versions installed (2.6 and 2.7) or maybe having the python folder and the Scripts subfolder in the system PATH is a problem for renpy. Both are non-default situations, but I would expect that both are common for many python devs.
Title: Re: -PyTFall- General Information
Post by: mijh on June 03, 2013, 02:06:30 AM
I have a python 2.7 in my system path and renpy.exe works fine. I'm pretty sure the exe is hardwired to use renpy's python, which is in lib\windows-i686


But I'm pretty sure whenever you try to do something technical, and it works absolutely perfectly the very first time, somewhere in the universe 1000 kittens cry out in painful deaths to restore the imbalance of karma thereby created. So, at least you didn't kill 1000 kittens.
Title: Re: -PyTFall- General Information
Post by: rudistoned on June 03, 2013, 02:12:06 AM
@mijh
That's what I would expect.

But how do you explain what just happened here?

UPDATE: Yeah, good for me  :D
Title: Re: -PyTFall- General Information
Post by: Xela on June 03, 2013, 02:28:42 AM
Well, all's well that ends well but I am sure that RenPy uses it's own Python cause it rigged with PyGame that RenPy requires to run. Anyway, as long as everything's working.

PS: I've started turning jobs into classes btw, improving them in the meanwhile. So we don't start working on exactly the same thing.
Title: Re: -PyTFall- Communication and Repository Information
Post by: VyridianD on July 20, 2013, 01:00:13 PM
Odd question here, once you've cloned the code, what's the file you direct renpy to? All 3 .rpy files in the base pytfall directory (screens, options, script) all are not understood by the program.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on July 20, 2013, 01:06:41 PM
Odd question here, once you've cloned the code, what's the file you direct renpy to? All 3 .rpy files in the base pytfall directory (screens, options, script) all are not understood by the program.

You simply start the RenPy and game will appear under projects, then you simply launch it.
Title: Re: -PyTFall- Communication and Repository Information
Post by: akab on July 27, 2013, 09:11:12 AM

I'm trying to download the program using the syntax:
git clone -- recursive git ://git.code.sf.net/p/pytfall/pytfall pytfall


Everything starts normally ... compact objects: 6337
then starts to download ...
but (git version 1.8.3. downloaded and installed fresh) remains stuck in downloading in variable percentages.


Any suggestions ?
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on July 27, 2013, 09:21:19 AM
Any suggestions ?

1) Keep trying, as far as I can tell, with git you don't loose the progress. So your will get the repo eventually.

2) Don't download it at all... It's a dev version that is not playable yet and not set up to be even remotely as a playable game.
Title: Re: -PyTFall- Communication and Repository Information
Post by: akab on July 27, 2013, 09:51:18 AM

Thanks Git he succeeded at the end (before I read your post).


I'll wait for the beta test. I wish you good work. ;)


Thank you for your kind reply :D
Title: Re: -PyTFall- Communication and Repository Information
Post by: rayray22 on July 31, 2013, 07:55:50 PM
mine wont start up it just opens a note pad and says

I'm sorry, but an uncaught exception occurred.


While executing init code:
  File "game/library/initialization.rpy", line 1, in script
  File "game/library/initialization.rpy", line 139, in python
WindowsError: [Error 3] The system cannot find the path specified: u'C:\\Users\\connor\\Downloads\\renpy-6.15.7-sdk\\renpy-6.15.7-sdk\\pytfall\\game/content/gfx/bg/locations\\*.*'


-- Full Traceback ------------------------------------------------------------


Full traceback:
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\bootstrap.py", line 265, in bootstrap
    renpy.main.main()
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\main.py", line 269, in main
    game.context().run(node)
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\execution.py", line 288, in run
    node.execute()
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\ast.py", line 718, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\python.py", line 1297, in py_exec_bytecode
    exec bytecode in globals, locals
  File "game/library/initialization.rpy", line 139, in <module>
    for fname in os.listdir(gamedir + '/content/gfx/bg/locations'):
WindowsError: [Error 3] The system cannot find the path specified: u'C:\\Users\\connor\\Downloads\\renpy-6.15.7-sdk\\renpy-6.15.7-sdk\\pytfall\\game/content/gfx/bg/locations\\*.*'


Windows-7-6.1.7601-SP1
Ren'Py 6.15.7.374
PytFall 0.29

Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on August 01, 2013, 12:27:42 AM
mine wont start up it just opens a note pad and says

I'm sorry, but an uncaught exception occurred.


While executing init code:
  File "game/library/initialization.rpy", line 1, in script
  File "game/library/initialization.rpy", line 139, in python
WindowsError: [Error 3] The system cannot find the path specified: u'C:\\Users\\connor\\Downloads\\renpy-6.15.7-sdk\\renpy-6.15.7-sdk\\pytfall\\game/content/gfx/bg/locations\\*.*'


-- Full Traceback ------------------------------------------------------------


Full traceback:
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\bootstrap.py", line 265, in bootstrap
    renpy.main.main()
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\main.py", line 269, in main
    game.context().run(node)
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\execution.py", line 288, in run
    node.execute()
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\ast.py", line 718, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "C:\Users\connor\Downloads\renpy-6.15.7-sdk\renpy-6.15.7-sdk\renpy\python.py", line 1297, in py_exec_bytecode
    exec bytecode in globals, locals
  File "game/library/initialization.rpy", line 139, in <module>
    for fname in os.listdir(gamedir + '/content/gfx/bg/locations'):
WindowsError: [Error 3] The system cannot find the path specified: u'C:\\Users\\connor\\Downloads\\renpy-6.15.7-sdk\\renpy-6.15.7-sdk\\pytfall\\game/content/gfx/bg/locations\\*.*'


Windows-7-6.1.7601-SP1
Ren'Py 6.15.7.374
PytFall 0.29

Looks like you've got only the script files without the submodule (that's where all the graphics are) or the submodule download was incomplete, try the instructions on the front page of this thread again.
Title: Re: -PyTFall- Communication and Repository Information
Post by: ninjinto on September 08, 2013, 09:43:27 AM
Quote
2) Don't download it at all... It's a dev version that is not playable yet and not set up to be even remotely as a playable game.

Huh. Yeah, I couldn't download it. I think Git just hates me or something; it's acting as if it doesn't even have the functionality to clone. Will probably need to look at that later and/or install something different to fetch the file.

Do you need anything in particular for the project? I do an awful lot in gamedev work from coding to music to GUI design; I'm a bit overextended but if any little thing is missing to get a steady beta up and running I can probably fill in whatever gaps there might be.


On another note, once you're ready to start testing please make a direct HTTP download available - things like Git can just flat out refuse to work for the strangest reasons. People can figure out how to plug a piece of Python code into renpy but it isn't really a 'figure out' thing to make uncooperative 3rd party software stop glitching.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 08, 2013, 10:24:41 AM
Huh. Yeah, I couldn't download it. I think Git just hates me or something; it's acting as if it doesn't even have the functionality to clone. Will probably need to look at that later and/or install something different to fetch the file.

Git is one of the least user-friendly pieces of software I came across lately. It requires users to have quite an extensive understanding of it's innerworkings before it can be used properly.

Currently git version is not being updated as I am the only one who's working on codebase, making updating it redundant and impractical. Rudi's work on tagging system is self-sufficient and doesn't effect other parts of the game. Only my desktop is set-up for git and I don't have access to it right now.

Do you need anything in particular for the project? I do an awful lot in gamedev work from coding to music to GUI design; I'm a bit overextended but if any little thing is missing to get a steady beta up and running I can probably fill in whatever gaps there might be.

It's not any one "thing", we need a whole bunch of texts, balancing, finalizing a number of smaller designs. This is a pretty largescale project so if you're already stretched thin, getting involved might not be a good idea.

If you have extensive experience with some specific area you think might be useful for PyTFall, let us know.

On another note, once you're ready to start testing please make a direct HTTP download available - things like Git can just flat out refuse to work for the strangest reasons. People can figure out how to plug a piece of Python code into renpy but it isn't really a 'figure out' thing to make uncooperative 3rd party software stop glitching.

LoL

I can make it a promise, we never intended to distribute the game through git. It's impractical and comes with to many issues. Git is useful when multiple people are working on codebase/content at the same time, other than that, it has somewhat limited uses.
Title: Re: -PyTFall- Communication and Repository Information
Post by: ninjinto on September 08, 2013, 11:30:52 AM
If you have extensive experience with some specific area you think might be useful for PyTFall, let us know.

Considering the scope of the project, probably programming. Programming doesn't have to be core system work; it could just be adding niche features to broaden the gameplay.

I'll make another attempt at fetching the stuff later and if I find any source code I'll just see what I can do with it. Hard to say what all is what without getting a good look at things; I've been on sourceforge for a long time and I'm used to fetching project files so it's just a matter of waiting for Git to cooperate with me. Definitely agree that it isn't user friendly; considering other options for source control might be a good idea.

I want to say subversion, but then I googled it and it wants me to download via Git. =/
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 08, 2013, 01:14:17 PM
Considering the scope of the project, probably programming. Programming doesn't have to be core system work; it could just be adding niche features to broaden the gameplay.

Well, tell me how it works out. If you are going to work on the code, I'll try to set up git at my laptop and update SF version with more recent version of code. Right now we're using db for it.
Title: Re: -PyTFall- Communication and Repository Information
Post by: ninjinto on September 08, 2013, 02:42:28 PM
The error I'm getting:

Quote
$ git clone --recursive git://git.code.sf.net/p/pytfall/pytfall pytfall
Cloning into 'pytfall'...
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Are there any login credentials required? The fact that it seems to have worked for at least one other tester here suggests that either there is some temporary disruption at the file's end of things or Git just feels like being a pest to me.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 08, 2013, 03:02:38 PM
Are there any login credentials required?

No... should just work.
Title: Re: -PyTFall- Communication and Repository Information
Post by: ninjinto on September 08, 2013, 03:05:30 PM
Maybe it'll just randomly decide to cooperate later. Or maybe it could work if I set my Linux machine back up and try it there. Or maybe something besides Git bash will work better; will explore options and search around for clues.

Update: using Git GUI at least allows me to fetch the files properly. Haven't gotten the thing running yet but that's a great leap forward from ye olde generic do-nothing error.

Update 2: Merge tells me it can't merge without commit. Commit tells me it can't commit without merge. At least I'm up to where I expected to be by this point; just doing some quick checking and will probably get it running tomorrow-ish.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 08, 2013, 03:53:34 PM
Maybe it'll just randomly decide to cooperate later. Or maybe it could work if I set my Linux machine back up and try it there. Or maybe something besides Git bash will work better; will explore options and search around for clues.

Update: using Git GUI at least allows me to fetch the files properly. Haven't gotten the thing running yet but that's a great leap forward from ye olde generic do-nothing error.

Update 2: Merge tells me it can't merge without commit. Commit tells me it can't commit without merge. At least I'm up to where I expected to be by this point; just doing some quick checking and will probably get it running tomorrow-ish.

LoL

Good luck. I'll see if I can install git on my laptop and figure out how to connect to sourceforge tomorrow as well.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 08, 2013, 04:26:33 PM
===============================

Git Repo will be offline until further notice as I intend to simplify it by creating a new repo with project as a whole available on a singe repo instead of being split in two.

-----
I've updated the info in the first post. Tell me if it is working :)
Title: Re: -PyTFall- Communication and Repository Information
Post by: geoper on September 09, 2013, 04:30:17 PM
Hello, im new posting but I've been downloading the game a couple of times before. I tried to use the new repository, but basically we are trying to log in as you to sf, so, git is asking for a password or it just for me.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 09, 2013, 04:37:11 PM
Hello, im new posting but I've been downloading the game a couple of times before. I tried to use the new repository, but basically we are trying to log in as you to sf, so, git is asking for a password or it just for me.

Nope, I got the wrong string, try this:

Code: [Select]
git clone git://git.code.sf.net/p/sbpytfall/code sbpytfall-code
PS: There is currently one known bug left where girls are not removed from girlsmeets after you hire them. I've fixed it and will upload the code a bit later.
Title: Re: -PyTFall- Communication and Repository Information
Post by: ninjinto on September 11, 2013, 09:56:31 AM
Quote
singe repo instead of being split in two.
That's what I was thinking would solve the problem. Will check up on that then post more about it in a bit.

...Upon attempting: RenPy doesn't seem to recognize the project folder.

I did this:
git clone git://git.code.sf.net/p/sbpytfall/code sbpytfall-code

...and wound up with a folder called sbpytfall-code, which contained a folder called .git (hidden,) which contained a few more folders. The whole thing was about 15k so my guess is that it's not ready for downloading yet. Either that or the 1st post's clone command is no longer what we're supposed to use.
Title: Re: -PyTFall- Communication and Repository Information
Post by: DarkTl on September 11, 2013, 12:41:53 PM
Jeez, maybe you guys should use db for now? I'm pretty sure it will work quick and flawlessly (just like always).
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 11, 2013, 01:59:03 PM
Jeez, maybe you guys should use db for now? I'm pretty sure it will work quick and flawlessly (just like always).

Will not work as well for sharing code :(

I am getting Errors when downloading the repo as well... it seems to be going well but fails in the middle. I am trying GUI now.
Title: Re: -PyTFall- Communication and Repository Information
Post by: DarkTl on September 11, 2013, 03:32:26 PM
You could try at least to use git for the source code only if you want version control so badly, and share all content via db. It's 3 MB against ~700 MB, this way the probability of error on the part of the git will be much less.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 11, 2013, 03:53:25 PM
You could try at least to use git for the source code only if you want version control so badly, and share all content via db. It's 3 MB against ~700 MB, this way the probability of error on the part of the git will be much less.

Yeap, that is one possibility, yet there is a but coming... I want git version to mimic my dev version. Otherwise I'll have to maintain three copies of code and that's complete crap. It's possible to use git for everything but char/rchar folders and that might be an acceptable solution.

BTW: I do not want/use version control while I am on my own or someone else is working on a closed system (Like Rudi's tag system). But if someone wants to contribute some code, it might not be a bad idea to figure out how to get git working.

What I've found out:

Code: [Select]
$> git config --global core.compression -1
$> git config --add core.compression -1

Entering these two commands should solve the EOF error that doesn't allow repo to be downloaded normally. I've tried it and am downloading the repo right now as a guest (without membership on SF/Project). I've killed my internet twice, ran a lot of different software and overloaded my line through torrents and yet git is still going strong... I'll let you know how it ends. I am currently using GUI so it doesn't report how many % is left.

PS: Not the right place to post it but Roman started on a decent engine for exploration/combat that could resemble Kamidori (haven't played it yet) when it's done. We could use something like that in the future. I am feeling much better as well so plan is to resume working on the game (Arena) tomorrow. I've been reading/listening to Python lectures in the meanwhile :)

Update:
Same Error... but the folder is increasing in size every time. It could be a temporary error, git seems to suck for large projects. I think I will get the whole 1.6 GB eventually...
Title: Re: -PyTFall- Communication and Repository Information
Post by: DarkTl on September 11, 2013, 04:51:08 PM
git seems to suck for large projects
Maybe not only for large ones (http://steveko.wordpress.com/2012/02/24/10-things-i-hate-about-git/) (§8 is so true  ::)). Just google for "git sucks" and enjoy even more angry reviews.

You could try bazaar or mercurial instead. The last one was created to effectively work with large repositories.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 11, 2013, 05:38:09 PM
Maybe not only for large ones (http://steveko.wordpress.com/2012/02/24/10-things-i-hate-about-git/) (§8 is so true  ::)). Just google for "git sucks" and enjoy even more angry reviews.

You could try bazaar or mercurial instead. The last one was created to effectively work with large repositories.

LoL

Mercurial gets extra points for Python... but they are very similar in their core... if git'll keep crapping out on us, I'll try mercurial next.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 12, 2013, 12:43:57 PM
Done with the git!

Fecking peace of cr@p downloaded 8.5 Gb of data for the project that's currently 1.6 GB and still failed to build sh!t. At this point I don't even care why there are errors or why it's not working. I am trying out Mercurial now.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 13, 2013, 04:33:27 AM
Mercurial seems to be a piece of sh!t as well or maybe I am just missing something... basically every time you push and push fails, you have to start all over again, it doesn't keep files that were successful on the server. I'll keep trying, if it doesn't work out, I'll add char/rchar folders to ignore lists and up those to Mega, in that case we could have used git just as well.
Title: Re: -PyTFall- Communication and Repository Information
Post by: rudistoned on September 13, 2013, 05:01:08 AM
My 2 cents:

I love mercurial, especially because TortoiseHg offers a very nice GUI for it. I have no experience how it works over networks, but it should perform reasonably well, given the fact that for example the Mozilla project uses it.

Both mercurial and git are suited for large projects (=many contributors, many files). Git is used to develop the linux kernel after all. However, both mercurial and git are distributed version control systems, so both, by definition, suck for repositories containing many large binary files, especially if those binary files change frequently. Storing many large binary files and modify them every now and then is exactly what we will be doing with the girl images if we store their tags as XMP metadata.
What we should do, IMHO, is keep the source code in mercurial (or git) and move the ressources somewhere else. Options:
a) SVN. Subversion can handle large binary files with frequent changes somewhat decently, but we will still see a significant increase in repository size over time. However, due to its centralized nature, the growing repository will not bother developers, only the server hosting the repository.
b) Dropbox, Mega, ...; No version control, therefore no repository size increase, but also no incremental updates.
Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 13, 2013, 05:10:42 AM
My 2 cents:

I love mercurial, especially because TortoiseHg offers a very nice GUI for it. I have no experience how it works over networks, but it should perform reasonably well, given the fact that for example the Mozilla project uses it.

Both mercurial and git are suited for large projects (=many contributors, many files). Git is used to develop the linux kernel after all. However, both mercurial and git are distributed version control systems, so both, by definition, suck for repositories containing many large binary files, especially if those binary files change frequently. Storing many large binary files and modify them every now and then is exactly what we will be doing with the girl images if we store their tags as XMP metadata.
What we should do, IMHO, is keep the source code in mercurial (or git) and move the ressources somewhere else. Options:
a) SVN. Subversion can handle large binary files with frequent changes somewhat decently, but we will still see a significant increase in repository size over time. However, due to its centralized nature, the growing repository will not bother developers, only the server hosting the repository.
b) Dropbox, Mega, ...; No version control, therefore no repository size increase, but also no incremental updates.

Thanks for the advice. I really like TortoiseHg as well :)

I think SF Mercurial + Mega will work best, I'll try to get it done today.
Title: Re: -PyTFall- Communication and Repository Information
Post by: rudistoned on September 13, 2013, 05:21:55 AM
A note of caution when using mercurial:
History in mercurial is designed to be permanent. Once you commit something, it is there to stay, especially if you push it to the main repository other developers pull from. It is possible to edit history, but unlike in git this is difficult and messy in mercurial.
Permanent history is not necessarily a bad thing, but it means one should be a bit more cautious when commiting changes. One exception: you can always undo the last commit in your repository using rollback, unless you have already pushed it to the main repository.

Title: Re: -PyTFall- Communication and Repository Information
Post by: Xela on September 13, 2013, 05:26:04 AM
A note of caution when using mercurial:
History in mercurial is designed to be permanent. Once you commit something, it is there to stay, especially if you push it to the main repository other developers pull from. It is possible to edit history, but unlike in git this is difficult and messy in mercurial.
Permanent history is not necessarily a bad thing, but it means one should be a bit more cautious when commiting changes. One exception: you can always undo the last commit in your repository using rollback, unless you have already pushed it to the main repository.

Hmm, I don't think it's a bad thing either, I mean you can still revert to previous versions. Nice tip on the rollback, I didn't know that.

Edit:
I still don't understand why they cannot copy files on per file basis, seems kinda stupid... but I am sure they had reasons. I've uploaded rchars to Mega, uploading chars to Mega right now and game files to SF.