Skip to main content
Topic: PAK128 r2718 Fatal Error (Read 9935 times) previous topic - next topic

PAK128 r2718 Fatal Error

In PAK 128 while enlarging a city using the special tools I get the following.

FATAL ERROR: UNKNOWN
Pure Virtual Function Call
Press any key.

Followed by.
Runtime Error
Program:G:\Program Files\PAK128\Simutrans\Sim-winsdl.exe.
This Application has requested the runtime to terminate it in an unusual way.
Please contact the applications support team for more info.

I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #1
thank you! that helped alot! at least to find the bug - not the fix :P

Hi Dwachs,

Z9999 was wrong, it is not when enlarging the map, it's when trying to grow certain cities. To make matters worse, it dosn't happen all the time and I can go back to the problem city later and grow it some more before it crashes again.

I sent the game to Knightly who didn't find a problem, but it's still doing it this morning.

edit: it does it with SDL and GDI
edit2: I've just gone to the next city on my list and grown it to 16000 with no problems, went back to the problem city and it crashed imediately. I will post the sve on File Sharingm someone else may be able to replicate the problem.
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #2
Thanks Prissi, I will try that.

If anyone wants to try it, I've posted it on File Sharing. Unfortunately for some reason the site is not giving me a link or allowing me to view any files,

Thanks Dirk. I had thought that Ihad  made it clear that I was talking about enlarging cities,  but hey! I missread posts too. LOL

Edit: Sorry Prissi, it crashes in every rotated position of the map. Sometimes I can do a rotation and click maybe 4 times before it crashes so if I click say 3 then save, I can go back into the game and click 3 more etc, etc. Please note: At the moment this is only happening with the city of Toowoomba. Maybe it has something to do with the position of the city on the map?
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #3
I know you problem is different. It points to a tile with a partly deleted building, I think. This is the most frequent cause of such error. But z9999 raised another error, and that one I could fix.

Re: PAK128 r2718 Fatal Error

Reply #4
Well I've found a workaround. If I do a rotate, click 3 times, save. rotate, click 3 times, save, etc, etc, I can grow the city quite a bit before it eventually crashes on the first click, but then I can go back and do it again. Very tedious but it works.
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #5
But still it would be nice to know which building is causing the error.

Re: PAK128 r2718 Fatal Error

Reply #6
But still it would be nice to know which building is causing the error.

I keep looking but there are so many buildings under construction it's hard to say which one it is.

Can you tell me why I can't get to the links page on File Sharing? I log on but all I get is the upload page. I uploaded my SVE but it didn't put up a link.
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #7
Split the topic ... discuss map enlargement crashes there: http://forum.simutrans.com/index.php?topic=3481
Parsley, sage, rosemary, and maggikraut.

Re: PAK128 r2718 Fatal Error

Reply #8
Can you tell me why I can't get to the links page on File Sharing? I log on but all I get is the upload page. I uploaded my SVE but it didn't put up a link.
****uming that you mean http://simutrans-germany.com/files/index.php?lang=en: The download section is at the bottom of the same page as the upload section. But the browser window has to be large enough (by height) to show both sections, otherwise you can't even scroll to the lower one.

Re: PAK128 r2718 Fatal Error

Reply #9
****uming that you mean http://simutrans-germany.com/files/index.php?lang=en: The download section is at the bottom of the same page as the upload section. But the browser window has to be large enough (by height) to show both sections, otherwise you can't even scroll to the lower one.

The computer world is very strange. I read your comment and thought, "He's right you know". I remembered that sometimes when I go to another site the browser doesn't open a full screen, it's only a tad smaller but it is smaller. I just logged into File Sharing and yes the screen was slightly smaller that the main browser window. BUT!!! everything was there. I noticed that the thin green window below the upload area was also there. It never was when I was trying to upload my SVE yesterday and the day before
Sigh! The computer world can be very frustrating.

Even more so now. I've just uploaded my SVE but no link was given and the file is not currently on display. This is the fourth time I've uploaded this file and at 15.6mb I can't keep doing it. Maybe Prissi will kindly let me upload it direct to him?
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #10
Even more so now. I've just uploaded my SVE but no link was given and the file is not currently on display. This is the fourth time I've uploaded this file and at 15.6mb I can't keep doing it.
I have tested uploading twice with a file of similar size (15.1 MB) when logged in, and the file doesn't appear in the download list either, nor did I get an error message. However, uploading a file of 7.5 MB worked at the first try. Maybe there is a bug. (I have SDSL here, so uploading is as fast as downloading, but a timeout can still happen. Furthermore, I am behind a proxy, but that allows uploads of 33 MB.)

Quote
Maybe Prissi will kindly let me upload it direct to him?
Maybe as an e-mail attachment? (His mail address is in his profile, Idon't know if anyone is supposed to send big files to that address.) But the other developers cannot test with the file in that case.

Re: PAK128 r2718 Fatal Error

Reply #11
I have tested uploading twice with a file of similar size (15.1 MB) when logged in, and the file doesn't appear in the download list either, nor did I get an error message. However, uploading a file of 7.5 MB worked at the first try. Maybe there is a bug. (I have SDSL here, so uploading is as fast as downloading, but a timeout can still happen. Furthermore, I am behind a proxy, but that allows uploads of 33 MB.)

Thanks whoami, at least I know it's not me. Is there anyway that the File Sharing hosts can be contacted about this.

Maybe as an e-mail attachment? (His mail address is in his profile, Idon't know if anyone is supposed to send big files to that address.) But the other developers cannot test with the file in that case.

I won't send it without his permission. But apart from wanting others to see my latest, for a long time, venture into PAK128 territory, there's not a lot of point as the game seems to be working fine.
r2722 worked with no problems and r2733 is working ok in both GDA and SDL. My fps remains pretty constant at 25. Only one noticeable problem, the game stops for about 90 seconds when auto saving. Sounds familiar? But the difference is, this game, although on a 1024x1024 map is, at the moment, no where near as large as the PAK64 that was doing the same thing. I fear that I may have major problems as the game progresses.
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #12
Might be too big for email as some providers (and not only on the receiving, also on the sending end) have size limits on mails.

As for the contact: ask Frank, it's his server.

Oh and pak128 naturally requires more resources than pak64 - although I'm not sure if that should affect the duration for saving games with a (less developed) map of similar size...
  
***** PAK128 Dev Team - semi-retired*****

Re: PAK128 r2718 Fatal Error

Reply #13
Might be too big for email as some providers (and not only on the receiving, also on the sending end) have size limits on mails.
That's why I wouldn't send it without Prissi's express permission.


Ok I'll PM Frank if he's not reading these posts.

HEY FRANK, YOU OUT THERE SOMEWHERE??


Oh and pak128 naturally requires more resources than pak64 - although I'm not sure if that should affect the duration for saving games with a (less developed) map of similar size...

No I'm not sur about it either, but it's sure is annoying.
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #14
But apart from wanting others to see my latest, for a long time, venture into PAK128 territory, there's not a lot of point as the game seems to be working fine.

Actually, your previous save which you sent to me a few days ago still crashes with r2742 (currently the latest revision) upon growing the city of Toowoomba. Probably your save, after saving and loading, has gotten rid of this problem. However, it may still be worthwhile for Prissi and others to take a look at your save (the old one which you sent to me) and see how the problem was introduced into your game in the first place.

Edit :

To save time, I have uploaded Colin's save here : Colin_PAK128_r2718.sve

Upon loading the game, you will see a city called Toowoomba. Choose the grow city tool, and keep clicking on the town and crash will occur.

Re: PAK128 r2718 Fatal Error

Reply #15
Latest SVE for PAK128 r2742

http://www.mediafire.com/download.php?yzlgk2c3dwh
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #16
Thank you. Problem itself could be confirmed with pak128_r717.

How to reproduce:
1. Go to Toowoomba
2. Change player to public
3. Select "Grow city" tool
4. Click land several times

Result:
100% crashed within 20 times clicks

[edit]
(138,633) is harbor.
Will city building be build on harbor ?

Quote
Program received signal SIGFPE, Arithmetic exception.
0x005851b2 in log_t::fatal(char const*, char const*, ...) (this=0x225a938,
    who=0x62e3fb "unknown", format=0x62e3e0 "pure virtual function call")
    at utils/log.cc:238
238                     printf("%i",15/make_this_a_division_by_zero);
Current language:  auto; currently c++
(gdb) bt
#0  0x005851b2 in log_t::fatal(char const*, char const*, ...) (this=0x225a938,
    who=0x62e3fb "unknown", format=0x62e3e0 "pure virtual function call")
    at utils/log.cc:238
#1  0x0052bd78 in __cxa_pure_virtual () at simdebug.cc:36
#2  0x00541fbf in haltestelle_t::rem_grund(grund_t*) (this=0x110f1090,
    gr=0xe1f66a8) at simhalt.cc:2459
#3  0x0042b50a in grund_t::~grund_t() (this=0xe1f66a8) at boden/grund.cc:364
#4  0x005ec9a2 in boden_t::~boden_t() (this=0xe1f66a8) at boden/boden.cc:369
#5  0x0055098a in planquadrat_t::boden_ersetzen(grund_t*, grund_t*) (
    this=0xac1b69c, alt=0xe1f66a8, neu=0xe1d9b68) at simplan.cc:225
#6  0x0040ae1e in hausbauer_t::baue(karte_t*, spieler_t*, koord3d, int, haus_besch_t const*, void*) (welt=0x225c4a8, sp=0x0, pos=
        {x = 138, y = 633, z = -1 '', static invalid = {x = -1, y = -1, z = -1 '', static invalid = <same as static member of an already seen type>}},
    org_layout=2, besch=0x598be00, param=0x0) at bauer/hausbauer.cc:431

Re: PAK128 r2718 Fatal Error

Reply #17
I guess the problem is that the harbour is not built on a fundament. Thus the check in simcity.cc, line 1943 fails, since the public player can remove all things on the tile.. I am not sure how to fix this.
Parsley, sage, rosemary, and maggikraut.

Re: PAK128 r2718 Fatal Error

Reply #18
I guess the problem is that the harbour is not built on a fundament. Thus the check in simcity.cc, line 1943 fails, since the public player can remove all things on the tile.. I am not sure how to fix this.

The strange thing here is that there is a p****enger dock at Birdsville and Bendigo and the problem does not occur there. Oh and yes the fault has reappeared since installing r2742.
I may not agree with what you say, but I will defend to the death your right to say it

Thought for the day

 When you are up to your backside in alligators, it is difficult to remind yourself that your initial objective was to drain the swamp.

Re: PAK128 r2718 Fatal Error

Reply #19
Thus the check in simcity.cc, line 1943 fails, since the public player can remove all things on the tile.

That is the problem.
I really don't understand why you want to treat public player's objects the same as player's objects.

Public objects are anyone can use it, but anyone should not own or remove them.
Public player should not remove player's objects.
They are different.

Re: PAK128 r2718 Fatal Error

Reply #20
Public objects are anyone can use it, but anyone should not own or remove them.
Public player should not remove player's objects.
They are different.
public player is ment to be some kind of superuser / administrator. So public player should be allowed to remove players buildings.
Parsley, sage, rosemary, and maggikraut.

Re: PAK128 r2718 Fatal Error

Reply #21
Well, I think this is dangerous. It could also lead to factories destroying stops due to placement and the like. The AI should not have the right to destroy player's buildings, The human public player might be different. But for factories by AI or tourist attractions (not to mention plain town houses) this breaks simutrans on many levels. Just Imagine the AI builds a hoouse on a ramp of a bridge or so.

Usually the player of the town is NULL, not spieler(1) That could solve this very well.

Re: PAK128 r2718 Fatal Error

Reply #22
Well, I think this is dangerous. It could also lead to factories destroying stops due to placement and the like. ...
This should not happen with all the checks that are in place (karte_t::ist_platz_frei), the building of factories or attraction should respect player buildings.
Quote
The AI should not have the right to destroy player's buildings,
They dont have!
Quote
But for factories by AI or tourist attractions (not to mention plain town houses) this breaks simutrans on many levels. Just Imagine the AI builds a hoouse on a ramp of a bridge or so.
AI != public player, the AI-players are treated codewise as the human player. Everything the human player is allowed, the AI can do. Building houses on ramps is not allowed for instance.

The particular thing that failed in this bug report, is that simutrans internally ****umes that all buildings are on fundament-grounds, but this is not true for harbour buildings on beach slopes, which still have boden_t under them.
Parsley, sage, rosemary, and maggikraut.

 

Re: PAK128 r2718 Fatal Error

Reply #23
Well, and that one routine used player(1) for removal instead of NULL (which is used in almost all other places).