So far I have not really been able to find a nice resource or help for this component. Yeah, i know components are supposed to be drop in and work. However with this one that is not strictly what a dev will want to do. For example I do not want the high score savin that it does. I mean, shouldn't it just do global high score sharing? Not take over the saving of data from your game? I think it could be nice that it is in there for some people. Definitely not for me.
So i removed the high score saving code from the component. This was actually quite easy to be honest. I am pretty sure a lot of developers are going to do this. I have a good solution for memory card savings and it is a much more fancy and featured one than this component supplies. however removal was not just set a define at the top of the code page and it would remove the saving stuff. ???? At this point i am wondering why not? Why is this 2 part component not able to be switchable?
Second thing i find bad is the fact there are hardly any comments. I grabbed this as so many people are using this in their published games. Therefore it is already tested in the field of battle. If i wrote my own it would require a lot more testing. However using this is a bit like wandering in the dark. I just hope i dont run into any walls. so far I have run into a wall though.
Third thing.. I managed to glean from a number of XNA threads that it should be possible to test the sharing between an Xbox and a PC with only 1 live gold account and creators club membership. This is actually feasable by changing a few lines of code and setting up system link and removing the signed in players privelage test. Again this is NOT wrapped in something that could easily beswitched by a define. It is Also not commented. who produces code for the comunity and doesn't comment it up as much as possible?
I know it sounds like i hate this code or J.Watte. that is not the case. I do however feel like the component is really quite unfinished. What we really need is a central place that has actual help for it. But then would anyone care but a few of us devs? I am not sure.
So i finish this piece with an update to where i am right now.
- Last night i had my Xbox and PC running my game.
- Neither of them wanted to Host, so they never saw each other.
- There is no comment to explain how this system to supposed to have someone start as a host.
- I ran over the code many times and cannot see how a machine can start out as a Host.
- So i debugged into the Xbox and told it to host.
- Then the machines connected and i believe swapped scores.
- I added some more debug output, but I will add more as I think this is something else that is missing from the component.
So todays job is either to rewrite the host/search methods, or figure out how all those published games have worked up till now. BAH! I really thought this was gonna save me some time, so far I think it is accumulating into more time than i wanted to spend.
My new method of Host or not will be time based.
- spend 5 minutes Hosting + everyone that connects to me will extend this by 30 seconds
- spend 5 minutes searching + everyone time i connect i will cut the time by 30 seconds
Thanks for listening, and if anyone has any bright ideas, especially on how hosting works, please let me know.
NOTE: I do believe the not hosting problem is somehow related to my removal of the saving code portion. I will add more information as i get it.
laters
No comments:
Post a Comment