史萊姆論壇

返回   史萊姆論壇 > 綜合討論二區 > 生活話題、日常閒聊、喇勒唬爛灌水區
忘記密碼?
註冊帳號 論壇說明 標記討論區已讀

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』


發文 回覆
 
主題工具 顯示模式
舊 2018-01-08, 11:40 AM   #1
mini
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時
註冊日期: 2002-12-07
文章: 11309
精華: 0
現金: 21717 金幣
資產: 3018817 金幣
預設 原創 - 走迷宮遊戲

十三年前的作品
花了三天把程式碼作一些更改
https://mega.nz/#!NxQm3KAD!JrvlypKmj...Y15HiEb9U_j3lQ

因為同樣是VB6的作品
所以如系統沒有註冊COMDLG32.OCX元件者
會無法使用 載入/繪製 地圖檔功能
出現錯誤者請點 []點擊我安裝OCX.bat 以註冊元件

如果有新的想法會持續更新,沒有的話就這樣了~

簡易使用說明:
最多可放置兩隻老鼠(姑且說它是老鼠)
請點擊地圖通道放置之(那個起點只是建議值,標好看而已)
接著點 [開始跑] 即可觀賞之

[重置/讀入]
跑完可按此鈕 重置畫面 及 老鼠歸籠
老鼠於籠中狀態下 按下此鈕則可載入其他 "地圖檔"

[繪製地圖]
可載入現有地圖檔作編輯 或 生成全新地圖檔素圖
手繪製作:
點滑鼠左鍵: 開通通道
點滑鼠右鍵: 放置磚牆,磚牆上按鍵則標示"起點"
連擊滑鼠左鍵: 標示"終點"
P.S.最大尺寸請限定在 100X100,否則會有誤
越細小密集的磚牆地圖可能會讓老鼠行走有誤,請拉大地圖並
將老鼠放置正確之

大型迷宮下如覺得老鼠走的久,可以改小 [速度(反應)]


程式碼探討:
1)
雖然程式碼設計上按下 [開始跑]
會重置老鼠心中的 "參考地圖旗幟"
但很有趣的是
同樣地圖給它們跑第二次平均統計下會跑得比第一次快(時間花得少)
這一點讓人不解?? (難不成他真的有學習力!? 思考邏輯很簡單不太可能才對)
P.S.不要不相信我沒有作弊!
2)
前一代老鼠思考邏輯是使用【動態】參考地圖旗幟,但發現有不符合真實情況的設計邏輯
(雖然想完全實作但以VB6來說麻煩了點) 所以二代改成一開始就知道起點GPS的理念 (市面上大多是這樣設計)
雖然可惜但想想你要走花園迷宮時,不也是知道外觀所以也蠻符合現實才對...
P.S.等哪天程式碼許可的情況再嘗試能否實現 【動態】參考地圖旗幟,畢竟這樣才比較像真的智慧體~
3)
發現老鼠最怕的迷宮就是甜甜圈式走道,這種地圖會發生最多的重覆行走現象
遊戲上只要某一隻抵達終點就會統計出"重覆行走步數",一般來說第一名者通常數字也比較少
但開闊型地圖則不一定,這點是很有趣的現象。
4)
智慧線設計目前無作用,等想好設計理念到時再加入。

最後,雖然有想過開放程式碼,但就是上面第2)點不滿意,不想獻醜也就沒有一併釋出
等哪天心血來潮再說吧~

==============
本來想放在中文化區,但想想這個只是排解無聊性質就改到這
也望有興趣的版友多多捧場

+++++Ver2.0.2+++++
http://forum.slime.com.tw/thread288075.html#post2372520

此帖於 2018-01-16 11:07 AM 被 mini 編輯.
mini 目前線上  
送花文章: 1593, 收花文章: 6990 篇, 收花: 24881 次
回覆時引用此帖
向 mini 送花的會員:
johnss (2018-01-13)
感謝您發表一篇好文章
舊 2018-01-08, 06:49 PM   #2 (permalink)
版區管理員
 
魔術王子 的頭像
榮譽勳章
UID - 115097
在線等級: 級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時
註冊日期: 2004-01-13
住址: 魔術學園
文章: 2034
精華: 0
現金: 10516 金幣
資產: 2673996 金幣
預設

語法:
10 KEY OFF: CLS
20 RANDOMIZE TIMER
30 PRINT : PRINT
40 INPUT "Input Length and width (H,V)"; H, V
50 IF H <> 1 AND V <> 1 THEN 70
60 PRINT "Input Error! again...": GOTO 40
70 DIM W(H, V), V(H, V)
80 Q = 0: Z = 0: X = INT(RND * H + 1)
90 FOR i = 1 TO H
100 IF i = X THEN 120
110 PRINT ".--"; : GOTO 130
120 PRINT ".  ";
130 NEXT i
140 PRINT "."
150 C = 1: W(X, 1) = C: C = C + 1
160 R = X: S = 1: GOTO 230
170 IF R <> H THEN 210
180 IF S <> V THEN 200
190 R = 1: S = 1: GOTO 220
200 R = 1: S = S + 1: GOTO 220
210 R = R + 1
220 IF W(R, S) = 0 THEN 170
230 IF R - 1 = 0 THEN 560
240 IF W(R - 1, S) <> 0 THEN 560
250 IF S - 1 = 0 THEN 390
260 IF W(R, S - 1) <> 0 THEN 390
270 IF R = H THEN 310
280 IF W(R + 1, S) <> 0 THEN 310
290 X = INT(RND * 3 + 1)
300 ON X GOTO 900, 940, 970
310 IF S <> V THEN 340
320 IF Z = 0 THEN 370
330 Q = 1: GOTO 350
340 IF W(R, S + 1) <> 0 THEN 370
350 X = INT(RND * 3 + 1)
360 ON X GOTO 900, 940, 1040
370 X = INT(RND * 2) + 1
380 ON X GOTO 900, 940
390 IF R = H THEN 490
400 IF W(R + 1, S) <> 0 THEN 490
410 IF S <> V THEN 440
420 IF Z = 1 THEN 470
430 Q = 1: GOTO 450
440 IF W(R, S + 1) <> 0 THEN 470
450 X = INT(RND * 3 + 1)
460 ON X GOTO 900, 970, 1040
470 X = INT(RND * 2) + 1
480 ON X GOTO 900, 970
490 IF S <> V THEN 520
500 IF Z = 1 THEN 550
510 Q = 1: GOTO 530
520 IF W(R, S + 1) <> 0 THEN 550
530 X = INT(RND * 2 + 1)
540 ON X GOTO 900, 1040
550 GOTO 900
560 IF S - 1 = 0 THEN 750
570 IF W(R, S - 1) <> 0 THEN 750
580 IF R = H THEN 680
590 IF W(R + 1, S) <> 0 THEN 680
600 IF S <> V THEN 630
610 IF Z = 1 THEN 660
620 Q = 1: GOTO 640
630 IF W(R, S + 1) <> 0 THEN 660
640 X = INT(RND * 3 + 1)
650 ON X GOTO 940, 970, 1040
660 X = INT(RND * 2 + 1)
670 ON X GOTO 940, 970
680 IF S <> V THEN 710
690 IF Z = 1 THEN 740
700 Q = 1: GOTO 720
710 IF W(R, S + 1) <> 0 THEN 740
720 X = INT(RND * 2 + 1)
730 ON X GOTO 940, 1040
740 GOTO 940
750 IF R = H THEN 840
760 IF W(R + 1, S) <> 0 THEN 840
770 IF S <> V THEN 800
780 IF Z = 1 THEN 830
790 Q = 1: GOTO 950
800 IF W(R, S + 1) <> 0 THEN 830
810 X = INT(RND * 2 + 1)
820 ON X GOTO 970, 1040
830 GOTO 970
840 IF S <> V THEN 870
850 IF Z = 1 THEN 890
860 Q = 1: GOTO 880
870 IF W(R, S + 1) <> 0 THEN 890
880 GOTO 1040
890 GOTO 1140
900 W(R - 1, S) = C
910 C = C + 1: V(R - 1, S) = 2: R = R - 1
920 IF C = H * V + 1 THEN 1150
930 Q = 0: GOTO 230
940 W(R, S - 1) = C: C = C + 1
950 V(R, S - 1) = 1: S = S - 1: IF C = H * V + 1 THEN 1150
960 Q = 0: GOTO 230
970 W(R + 1, S) = C
980 C = C + 1: IF V(R, S) = 0 THEN 1000
990 V(R, S) = 3: GOTO 1010
1000 V(R, S) = 2
1010 R = R + 1
1020 IF C = H * V + 1 THEN 1150
1030 GOTO 560
1040 IF Q = 1 THEN 1100
1050 W(R, S + 1) = C: C = C + 1: IF V(R, S) = 0 THEN 1070
1060 V(R, S) = 3: GOTO 1080
1070 V(R, S) = 1
1080 S = S + 1: IF C = H * V + 1 THEN 1150
1090 GOTO 230
1100 Z = 1
1110 IF V(R, S) = 0 THEN 1130
1120 V(R, S) = 3: Q = 0: GOTO 1140
1130 V(R, S) = 1: Q = 0: R = 1: S = 1: GOTO 220
1140 GOTO 170
1150 FOR j = 1 TO V: PRINT "|";
1160 FOR i = 1 TO H
1170 IF V(i, j) < 2 THEN 1200
1180 PRINT "   ";
1190 GOTO 1210
1200 PRINT "  |";
1210 NEXT i
1220 PRINT
1230 FOR i = 1 TO H
1240 IF V(i, j) = 0 THEN 1270
1250 IF V(i, j) = 2 THEN 1270
1260 PRINT "|  "; : GOTO 1280
1270 PRINT "|--";
1280 NEXT i
1290 PRINT ".": NEXT j
1300 END
GWBASIC的程式,也是我寫Basic程式的另一個目的,就是希望能夠執行這個程式(有點遙不可及齁)
不過這程式沒辦法在VB執行,倒是可以在QB執行
前幾天有在網路找到QB64位元的程式,有編譯成執行檔,連接在下面
https://drive.google.com/file/d/1v47...ew?usp=sharing
__________________
魔術就是欣賞神奇的效果
如果魔術的秘密被破解了
那魔術就失去欣賞的價值
魔術王子 目前離線  
送花文章: 1073, 收花文章: 1210 篇, 收花: 3370 次
回覆時引用此帖
有 2 位會員向 魔術王子 送花:
johnss (2018-01-13),mini (2018-01-08)
感謝您發表一篇好文章
舊 2018-01-08, 06:52 PM   #3 (permalink)
版區管理員
 
魔術王子 的頭像
榮譽勳章
UID - 115097
在線等級: 級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時
註冊日期: 2004-01-13
住址: 魔術學園
文章: 2034
精華: 0
現金: 10516 金幣
資產: 2673996 金幣
預設

不過我沒辦法下載MEGA的檔案,畫面一直停留在初始化
魔術王子 目前離線  
送花文章: 1073, 收花文章: 1210 篇, 收花: 3370 次
回覆時引用此帖
向 魔術王子 送花的會員:
johnss (2018-01-13)
感謝您發表一篇好文章
舊 2018-01-08, 08:22 PM   #4 (permalink)
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時
註冊日期: 2002-12-07
文章: 11309
精華: 0
現金: 21717 金幣
資產: 3018817 金幣
預設

引用:
作者: 魔術王子 查看文章
不過我沒辦法下載MEGA的檔案,畫面一直停留在初始化
可能晚一點再試試
方才可以下...,要不然先轉存到 你申請的MEGA空間,接著再從你申請的MEGA點擊下載

又剛剛想到如何實現
【動態】參考地圖旗幟
可能近期會改版一下
預計改版後外表是不會感覺不同,純粹是程式碼邏輯運作變化
mini 目前線上  
送花文章: 1593, 收花文章: 6990 篇, 收花: 24881 次
回覆時引用此帖
有 2 位會員向 mini 送花:
johnss (2018-01-13),魔術王子 (2018-01-08)
感謝您發表一篇好文章
舊 2018-01-08, 09:14 PM   #5 (permalink)
版區管理員
 
魔術王子 的頭像
榮譽勳章
UID - 115097
在線等級: 級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時
註冊日期: 2004-01-13
住址: 魔術學園
文章: 2034
精華: 0
現金: 10516 金幣
資產: 2673996 金幣
預設

引用:
作者: mini 查看文章
可能晚一點再試試
方才可以下...,要不然先轉存到 你申請的MEGA空間,接著再從你申請的MEGA點擊下載

又剛剛想到如何實現
【動態】參考地圖旗幟
可能近期會改版一下
預計改版後外表是不會感覺不同,純粹是程式碼邏輯運作變化
其實我現在連自己的MEGA空間都進不去,一直出現正在接收帳戶資料的畫面
還好我沒有什麼重要資料存在裡面
魔術王子 目前離線  
送花文章: 1073, 收花文章: 1210 篇, 收花: 3370 次
回覆時引用此帖
向 魔術王子 送花的會員:
johnss (2018-01-13)
感謝您發表一篇好文章
舊 2018-01-08, 09:48 PM   #6 (permalink)
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時
註冊日期: 2002-12-07
文章: 11309
精華: 0
現金: 21717 金幣
資產: 3018817 金幣
預設

引用:
作者: 魔術王子 查看文章
其實我現在連自己的MEGA空間都進不去,一直出現正在接收帳戶資料的畫面
還好我沒有什麼重要資料存在裡面
清空網路暫存
換瀏覽器
網路重新撥號(換IP)
再不然就是隔日再試

以前也碰過
大多是隔幾天後就正常了
mini 目前線上  
送花文章: 1593, 收花文章: 6990 篇, 收花: 24881 次
回覆時引用此帖
有 2 位會員向 mini 送花:
johnss (2018-01-13),魔術王子 (2018-01-08)
感謝您發表一篇好文章
舊 2018-01-08, 11:36 PM   #7 (permalink)
版區管理員
 
魔術王子 的頭像
榮譽勳章
UID - 115097
在線等級: 級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時級別:35 | 在線時長:1417小時 | 升級還需:23小時
註冊日期: 2004-01-13
住址: 魔術學園
文章: 2034
精華: 0
現金: 10516 金幣
資產: 2673996 金幣
預設

引用:
作者: mini 查看文章
清空網路暫存
換瀏覽器
網路重新撥號(換IP)
再不然就是隔日再試

以前也碰過
大多是隔幾天後就正常了
清除暫存資料後,重新登錄就正常了,謝謝
似乎漸漸跟電腦脫軌了,竟然連這麼簡單的概念都沒聯想到
魔術王子 目前離線  
送花文章: 1073, 收花文章: 1210 篇, 收花: 3370 次
回覆時引用此帖
有 2 位會員向 魔術王子 送花:
johnss (2018-01-13),mini (2018-01-10)
感謝您發表一篇好文章
舊 2018-01-15, 02:38 PM   #8 (permalink)
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時
註冊日期: 2002-12-07
文章: 11309
精華: 0
現金: 21717 金幣
資產: 3018817 金幣
預設 Ver2.0.2

https://mega.nz/#!NxQm3KAD!JrvlypKmj...Y15HiEb9U_j3lQ

裡面有兩個版本 (其一為原本的 "GPS預知設計")
新版
完成 "動態旗標設計",程式碼使用類似動態陣列的設計技巧
可以突破固定陣列的邏輯限制,又當小於100x100時記憶體使用會較少(其實程式碼增加後一來一往下並沒有佔到多少便宜...)
只是此設計所代表的意義是:
較真實的智慧體 (使用相對座標,GPS則是絕對座標)

P.S.
相對座標: 藉由起點推算出 每一步相對於起點所對應出來的座標值

此帖於 2018-01-16 03:05 PM 被 mini 編輯.
mini 目前線上  
送花文章: 1593, 收花文章: 6990 篇, 收花: 24881 次
回覆時引用此帖
舊 2018-01-17, 03:51 PM   #9 (permalink)
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時級別:82 | 在線時長:7111小時 | 升級還需:110小時
註冊日期: 2002-12-07
文章: 11309
精華: 0
現金: 21717 金幣
資產: 3018817 金幣
預設 探討為何統計第二次通常比第一次還快

根據合理分析是因為: "亂數的不重複設計所導致"

根據試驗當單一老鼠時
常態性下可通行方向 少於4時 會出現此現象
(上下左右都可以通行之通道 占多數時=開闊型地圖,此時結果反而會有相反結果)
當地圖是 "開闊型地圖"
VB6的亂數設計反而會使下一次的花費時間
比前一次還多 (根據實驗成等比級數增加趨勢)

那這在其他版VB 或 程式語言下是否也是如此
一般亂數設計就是用時間當因子 (因為時間有不重複性)
所以推論其他程式語言或許也是這般結果

那探討這有何意義?
這論述其實非常有意義
在預測或模擬設計時非常有參考價值
模擬:
可通行方向越多 會形成較多的 預測盲點,預測盲點越多 預測的可控制性就越小
【時間花費(少)】代表【可控制性(佳)】
【可通行方向(多)】代表【預測盲點多寡(多)】
預測:
【相同起點時間】代表【預測盲點減少】
【形成趨勢】代表【可通行方向越少】
以上
模擬與預測看似條件相反,所以:
要預測準確模擬環境就要越單純,否則會趨向於中性

但投入兩隻老鼠時
不論是 地圖開闊與否都會有股
"第二次通常比第一次還快" 的現象
所以
短期連續的大量亂數(兩隻同步取用亂數當參考) 會使 模擬與預測 趨勢相同
(同樣有 "可通行方向越多 會形成較多的 預測盲點,預測盲點越多 預測的可控制性就越小" 的現象)

結論:
不論"群體" 或 "單一",要用程式語言寫出接近現實的情況
請去除多餘的不可測性(盡量單純),而時間因素則要有一致姓(精確)
越高級的計算機(#1單一時間能實現大量的同質亂數) 能得到越準確的模擬與預測
,因為群體越大趨勢越單一,群體越大又要需要#1 就須計算機越高級。
mini 目前線上  
送花文章: 1593, 收花文章: 6990 篇, 收花: 24881 次
回覆時引用此帖
發文 回覆


主題工具
顯示模式

發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 11:13 PM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2018, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1