Time of Update: 2018-12-05
MMORPG遊戲在開發中會涉及到大量的配置資料,這些配置資料有如下幾個特徵: 1)配置資料在伺服器啟動時進行初始化載入; 2)配置資料會經常變更,一些重要模組的配置資料幾乎每個小版本都會有修改,如:技能系統、任務系統等; 3)錯誤的配置資料往往會引發程式許多意想不到的Bug; 4)各個模組的配置資料累加起來紛繁雜多,而這些配置資料一般是由策劃同事來添加和修改的,實際工作中經常容易配錯;
Time of Update: 2018-12-05
做了快兩年的項目,今天第一次對外技術封測了。兩年的時間,項目經曆了核心人員的變更,專案管理的混亂,策劃需求的頻繁修改等等許多於項目不利的因素。但無論怎樣,我們終於要給玩家亮相了。這次技術測試,我們放了約1900多個號,主要還是側重於技術層面的驗證,畢竟這是外網的第一次正式運營。上午10點,準時開服,線上的資料也慢慢的上升。我重新建立角色,作為一個普通玩家參與遊戲中,儘管之前作自我裝載時,已經玩了很多次了,但作為自己參與開發的第一個遊戲,這其中的體驗感覺是不一樣的,每一個情境,每一個任務,每次與N
Time of Update: 2018-12-05
昨天就說著要應用一下gtest,今天上班歸來,就在網上找一些有關使用的資料,總體評論都很不錯。於是乎,說幹就幹,馬上去官網(這可是google支援的開源項目啊,可惜google馬上就要離開中國了,默哀一下!)下一個最新1.4版的,在suse linux下依照configure、make、make install等步驟操作後安裝搞定。立馬寫了一個小小測試案例,運行,OK!
Time of Update: 2018-12-05
(1)為每一個存放在共用記憶體的對象,編寫Init()、Resume()、Reload()函數;(2)伺服器處理序重啟進行共用記憶體恢複時,謹記恢複存放在共用記憶體中的對象資料的同時,也不要忘了同時恢複指向共用記憶體資料的指標;(3)用gcc編譯時間,選擇-Wall -Wextra -Wno-unused-parameter
Time of Update: 2018-12-05
這裡列舉在技能戰鬥系統開發中,碰到的兩個與位置同步相關的問題 (一)
Time of Update: 2018-12-05
如果想要共用檔案,在 Linux 對 Linux 的環境下,最簡單的方法就是透過 NIS (網路資訊服務——NIS) (Network Information Service) 是集中控制幾個系統管理資料庫的網路用品。)這玩意兒了!至於Windows 對 Windows 的環境下,最簡單的方法則是網路位置。那如果你的區網中有 Windows也有 Linux 而且想要共用檔案系統的話,那該怎辦? 那就使用 Samba 伺服器吧!Samba 可以讓 Linux,加入 Windows 的網路位置支援,
Time of Update: 2018-12-05
問題引入:相同的有問題的代碼,在4U的gcc3.4.6版本上運行良好,但是在5U的gcc4.1.2版本運行卻失敗!簡化問題如下:#include <iostream>using namespace std;int test(void* null1, void* i, void* j, void* k, void* null2){ *((long*)i) = 1; *((long*)j) = 2; *((long*)k) = 3;}int
Time of Update: 2018-12-05
工作都有一段時間了,一直苦於版本控制。用的一直都是手動方式,copg,備份,note。雖然感覺自己還是很“勤奮的”,但是為了使自己更懶,我只有學git了。(這裡不得不說一下github,一個成熟的編程社交網站,菜鳥接近高手的好去處)首先是看網易公開課的視頻,看完了,懂一點,但還是不敢用,因為“太複雜”了。這裡說的複雜,是因為我以前沒有用過什麼版本控制軟體,一上手就用git了。git給我的印象是輕巧,快捷,優雅。輕巧是因為她是一個檔案系統,而且近乎所有操作都是本地執行。快捷是因為她是直接記錄快照,
Time of Update: 2018-12-05
在作設計時,不時要回到之前commit的某個階段。有分候或者是要恢複某個檔案,有時可能會有一些誤操作。所以,生活有時需要reset。當然,我們要養成好習慣,在commit前diff一下。先說恢複某個檔案:1.首先查看某個檔案某次的修改,這樣就可以了git show 某次的提交雜湊值 檔案名稱例如git show 12e49a7720fe92d5c19a8015fbc40a410e52370d test.java2.取消已經暫存的檔案全加到了暫存地區。該如何撤消暫存其中的一個檔案呢?git
Time of Update: 2018-12-05
Lua除了是一門擴充的言語外,還是一門“膠水語言”。最著名的就是作為遊戲的指令碼開發。這裡主要說lua怎樣與c互動。Lua和c語言通訊的主要方法是一個無所不在的虛擬棧。幾乎所有的API調用都會操作這個棧上的值。所有的資料交換,無論是Lua到C語言或C語言到Lua都通過這個棧來完成。棧可以解決Lua和C語言之間存在的兩大差異,第一種差異是Lua使用垃圾收集,而C語言要求顯式地釋放記憶體;第二種是Lua使用動態類型,而C語言使用靜態類型。下載好Lua源碼,可以選擇在不同的平台編譯,編譯也很簡單,下面
Time of Update: 2018-12-05
不多說,上連結:http://www.dslreports.com/forum/remark,21015670http://www.akkadia.org/drepper/linux-rfc3484.html解決辦法:/etc/gai.conf: # scopev4 <mask> <value># Add another rule to the RFC 3484 scope table for IPv4 addresses.# The
Time of Update: 2018-12-05
當別人反駁你的時候,你不要心跳加速,也不要不由自主的激動,不要急著去爭辯,而是先要告訴自己:冷靜,小夥子!然後,仔細的聆聽他的反駁意見,無論對錯,無論有益與否,姑且聽之!這是尊重他人的批評意見。尤其這個人是你的上級,更應如此!一般情況下,沒有人會無緣無故反駁另一個人的,他反駁的時候,一定是掌握了某方面的證據,或者是他個人的思考,無論如何,都是集思廣益之道! 請你放下任何其它的顧慮!要的是你的胸襟開闊!要的是你善於學習他人之長!
Time of Update: 2018-12-05
前些日子,在論壇上看到一個關於map的討論文章。主要是討論如何不使用map的底層記憶體池機制!有人說可以重新定製map的分配器(也就是 allocator)達到目的。真的可以嗎?先說下allocator。。。。--------------------《EFFectiveSTL》第十條說到:“大多數標準容器從未 向它們相關 的分配器索要記憶體”。注意這裡是它們相關!其理由是:條款10:注意分配器的協定和約束---STLChina.org
Time of Update: 2018-12-05
項目馬上就要進入技術封測了,這陣子加班也成了家常便飯,每天都是進行到淩晨1、2點,每天出一個版本,我知道這種工作方式是有待商榷的,雖然,明知道疲勞作戰效率低下;雖然,明知道過度加班會導致Bug叢生;可目前似乎也就只能這樣了。作為一名戰士,首先你得服從。 午飯時,碰到了一位web
Time of Update: 2018-12-05
壇中窺得水友有帖如是,微言大義,餘甚愛之,特收藏於此,附評論於後 專 靜 謙 籌 悟 慎 透 恒 專 忽如一夜春風來,千樹萬樹梨花開."現在的技術百花齊放,切忌不可貪.不要盲目的追求新技術,唯有演算法才是靈魂.評:書要先讀厚,然後再讀薄,要專先要博 靜 非淡泊無以明志,非寧靜無以致遠."要想達到高的境界,必須能夠心靜.年輕的程式員都很浮躁,這一點對於他們來說尤為的重要.評:靜而後安,安而後定,定而後思,思而後慧,慧而後得 謙
Time of Update: 2018-12-05
lua的一項重要用途就是作為一種配置語言(configuration language)。主要是讀變數和table。mycon.lua--my config width = 300height = 400luat_Test1={a=123, b=456, c=789}luat_Test2={123, 456, 789}main.cpp#include<stdio.h>//如不用extern會出現串連錯誤,編譯成了C++檔案extern "C" {#include
Time of Update: 2018-12-05
1. awk語言的最準系統是在檔案或字串中基於指定規則來分解抽取資訊,也可以基於指定的規則來輸出資料。完整的awk指令碼通常用來格式化文字檔中的資訊。2. 三種方式調用awk1) awk [opion] 'awk_script' input_file1 [input_file2 ...] awk的常用選項option有:① -F fs : 使用fs作為輸入記錄的欄位分隔符號,如果省略該選項,wak使用環境變數IFS的值。② -f filename :
Time of Update: 2018-12-05
本文從兩個錯誤的常式開始,提出 Awk 中全域變數汙染的現象,並分析其發生的原因。接下來,針對 Awk 變數範圍的特點,提出兩種避免全域變數汙染的常用方法,引出 Awk 中定義局部變數的方法,並提出修改過後的代碼。然後,通過 Awk 的變數調試功能,提出修改過後代碼存在的不足,並引出編寫通用函數應注意的地方。最後,通過簡單說明 Awk 中包含標頭檔的方法,倡導大家更科學,更有效使用 Awk 這一文本處理利器。文章的結尾提供了一些常用的 Awk 參考文檔,供大家學習參考。在 C、PHP
Time of Update: 2018-12-05
1.規格化的值以sizeof(float)=4為例:1.5的浮點數表示:1)1.5轉換為2進位:1.12)轉換:0.1*2^0 (整數部分的1省略)3)得到階碼:127+0=127,即0111 1111 (指數部分可能是負數,為了相容負數,需要+127)4)得到尾數:1,後面補齊05)確定符號位:0所以,1.5的浮點數表示如下:符號位:1bit階碼:8bits尾數:23bits00111 11111000 0000 0000 0000 0000 000程式驗證如下:#include
Time of Update: 2018-12-05
關於讀書,這也是大學養成的習慣。喜歡泡圖書館。畢業了,就很少泡圖書館了。買書,看書也比以前積極多了。但是在海量的書堆中,怎樣吸收需要的“營養”呢?後來讀了《暗時間》這本書,慢慢覺得,有效讀一本書,是很重要的。在我看的書中,我喜歡這三類:傳記,小說——這類書就是用來感悟生活。想一想,程式猿也有感性的時候。最重要的是,能讓我找回讀書時期的一點感覺。年齡不能阻礙我讀書的熱情。專業書——這類書是我買的最多的書,雖然畢業後讀的書不多,但大部分的金錢都花在這裡面了。這類書就當作是工具書,需要時翻兩翻,裝B必