なずブログ

インフラSE、Java開発、リモートワークエンジニアな人のメモ帳

元職業訓練生のおしごと記録:その13~仕事が下手~

f:id:nazuna_0124:20170329192937p:plain

転職してから2ヶ月経過です。

なにげに文句ばっかりいってますが

心の底から転職してよかったなーとしみじみ。


楽でお給料もいいとかズルイとか言いたくなるくらいです。



この楽という部分なんですが、、、 まあ 非常に言いにくいんですが

みんな仕事が下手です。

がんばらなくても、余裕をもってついていけるので楽という意味。


というわけで表題の仕事が下手について。

明確なはずなんですが、なにがって言われるとできないもどかしさ。


仕事ができない、とか頭が悪いとはまた別の意味です


教わってない、自分でやり方考えるほど積極的じゃないという

のが一番近いです。



すっかりVBAerと化してます。作ったものでどんどん楽にはなります。

ただ、改善する前のやりかたが下手なのです。



例えるなら、ほうきとチリトリで床掃除してるところに

掃除機を持ち出そうとしている状況。


ほうきだから大変なのは事実だけれど、掃除の仕方がなってない!的な。


バーベキューやったら異様に段取りが悪いとかそういうイメージですね。



こういう時にやり方だけ指摘すると喧嘩になるので、

掃除機わたしながらやり方を教えるのがいつものやり方。


掃除機に対する感謝でわたしの話も聞いてくれるのです。


VBA提案してあまりいい目に合わなかった人をたまにみますが、

そういう提案の仕方が下手なのかなぁ。

無課金ぼっちプレイでも血盟には入りましょう~りねれぼ~

f:id:nazuna_0124:20170403224602p:plain

だんだんとアカウントが増えてプレイ中。

いろいろテストをかねてます。


やっぱりリセマラはしたほうがよいで確定しそうな雰囲気です。

その代わり思ったより妥協点が低いという感じ。


SRの目的武器ならOKぽいです。ノーマル一択かと思いきや

エリートは使いどころがあります。



というわけで血盟のおはなし。無課金ぼっちはつい忘れがちです!

自分で作ってでも入りましょう。


メリットでメリットはぐぐってください←

テレポスクロールいっぱい手に入るよ!とだけ。


問題は血盟レベルを上げるのにエリートダンジョンでの狩りが必要なことです。

これにエリート追加ダメがあると便利なのですな。



SRの武器2本作るのは割りと時間かかります。

そんなわけでどっちでもSR武器出たらリセマラ終了でよさそうです。

PvE嫌いな無課金がリネージュ2レボリューションを効率よくやりたい

f:id:nazuna_0124:20170327183448p:plain

いろいろ試していますが、どうもはっきりしません。

基本的なバランスとしては途中で課金したくなるような

仕組みにはなってるのだと思います。


とりあえず目標を武器防具を全部UR。

そのあとアクセサリURまたはオプション厳選にしてみます。



ぐぐれば目にしますが、考える上での重要な仕様が下記です。


・ドロップにレベル差で影響がある。

低レベルから強化に必要なアイテムを落とす

・お金は高レベルのほうが稼ぎやすい

・武器強化以外の強化で上がる攻撃力よりmobのHP増量のほうが大きい

注意しないと意図した速度より早くレベルがあがってしまう。



目標により効率の良さとは達成した日数になります。


昨日はリセマラいらないかもなんて言いましたが、

今のところの感覚はURでノーマスモンスター特攻武器が

必須な気がしてきました。



今のところの問題はSRやUR武器は手に入れたとして

限界までフィールド狩りで強化アイテム集めたほうが

早いのかどうかになります。


路線としては3つ

・装備ダンジョンorアデナダンジョンのレベルまでは全てフィールド狩り

・モンスター図鑑など特ベチ箇所まではメインクエをこなす。

・むしろさっさとレベルあげてログインボーナスだけでいく。


なんかこう、3つ全部があんまり変わらないんじゃないか疑惑です。


とりあえず、2アカでバフ介護はあったほうがいいんではないかという説←

PvP嫌いがリネージュ2 レボリューションはじめてみた

f:id:nazuna_0124:20170309204724p:plain

いつの間にかはじまってました!

TOSがひどかったので、しばらく遊べそうな程度には楽しいです。

情報見ても非常にわかりにくいので軽くまとめです。


表題の通りPvPきらい、やらない人向け。

ちなみにPC時代のリネ2はやったことないです。



同じ遊び方をする血盟員募集中です←


ゲーム概要

本来は対人戦がメインです。血盟(いわゆるギルド)単位で遊べるので

好きな人には悪くないのかも。


基本的には札束で殴り合うゲーです。

この時点で私がこの路線で遊ぶことはなっしん。



じゃあ何を遊ぶのか


装備集めゲーです。一般的なダンジョンはあまり機能してません。

ただし、血盟で入れるダンジョンはレイドちっくで楽しめそうです。


注意点

今のところアバター要素がなし。

種族と性別が固定。クラスも種族に紐付いてます。


いらない子ほどひどくはなさそうですが、やっぱり優劣はあるみたいです。


レベルではなく装備(戦闘力)ゲームです。

レベルだけ目指すのはあまり意味が無いので注意。

2次職すら急がないほうがよさそうです。


スタートする前に。

AndroidエミュレーターのNOXをおすすめ!

課金しない場合は特にフィールドの放置が重要です。


スマホで放置は熱くなったりであんまりおすすめできません。


いまのところサーバー変更のアイテムはなし。

出るという噂はあるらしい?


スタート直後のあれこれ

現在はスタート記念的なボーナスでガチャがひけます。

リセマラしたほうがいいかが人によります。

また、なぜそうなるかはゲームシステムをある程度理解しないと厳しいです。


そんなわけで、サーバーさえ切り替えればやり直しができるので

一旦は試してみるのをオススメ。


背景装備はいりません

いまいち未確定ですが。。。

ぐぐるとリセマラランキング上位に出て来る背景装備。


要するにこれは対人用装備です。

基礎値が高いためPvEでも使えますが、基本的に他の装備を目指します。


リセマラするの?

軽くしました

気にする要素は3つです。

・武器ランク(いわゆるSRとかUR)


・特性(追加ダメージの対象がかわります)


・オプション(HP吸収が便利)


SR以上で特性がノーマルモンスターに追加。

HP吸収が付いているか、即ダイヤ使って5回以内くらいに着くこと。


そんなに無理せず序盤から楽しめるくらいの設定です。


装備グラフィックについて

防具はどうも実質2種類らしい。。。?

これがレア度に応じてグラフィックが変わります。


鍛冶屋で行えるあれこれの補足

・特性

背景装備=対人用追加 っぽいです。

序盤はとにかくノーマルが必要。

中盤以降で他の武器作りたくなるんではと予想。


HR以上からつくので注意。最初は全身このレア度をめざします。


・合成

種別は変わりませんが、別の装備になる場合があります。

グラが変わるということです!

また、背景装備になることもあるんだとか。


・強化

スクロールで行います。フィールド狩りでもドロップします。

合成やランクアップで引き継がれるのでいいの引いたらガンガン。


・オプション

ダイヤを使って変更できます。装備箇所によって着くオプションが違います。

HP吸収やら攻撃速度やらとても重要です。


R装備からつきます


当初はR装備同士を合成してHRにするのですが、いい方のオプションが付いている

装備をベースにしましょう。


その他の補足

取引所のシステムが珍しいです。

アイテムの左側に青ダイヤがついているものがあります。


これがついている装備のみ出品できます


そして購入側は青ダイヤでのみ購入です。


要するに課金する人がほしそうなアイテムで、青ダイヤ付きが出たら

取引所使いましょうです。


マーブルとかいう強化補助のアイテムが高値で売れてるようです。

うっかり使わないように!



VBAの配列とコレクションとディクショナリ

f:id:nazuna_0124:20170312082946p:plain

VBAのクラスモジュールは使わないほうがいい!

そう思っていた時期がわたしにもありました。


元々よくわからないのと、使っているコードを見ても

メリットを感じられなかったからです。

(長くなるのでちゃんと読まなかったとも言う)



Javaやったあとだけに、いつのまにかわかるようになってました←


それでもVBAは他の人に引き継ぐことを考えると

教育コストが高いので基本的に使わないほうがよいと思ってます。


そう思っていたら、さすがに使ってもよいのでは思えるものを発見。

それが配列、コレクション、ディクショナリ関係です。



というわけで、この3つのおさらいです。

逆にいえば、この3つを使い分けてないならクラスモジュール使う必要は

やっぱりありません!


ちなみに意味もなく比喩ると

ノート、バインダー式ノート、手帳の使い分けみたいなかんじ。



配列

・Redim preserveがめんどくさい。(動的配列がめんどい)

・要素数の取得がUbound関数でめんどい

・Joinで結合が便利(1次元だけ)

Excelセルに高速書き込みに使う。(1次元はだめ)

・メソッドがないから(アタリマエ)いちいち処理書くのだるい。

・別に高速なわけでもない


Collection

・こいつだけなぜかindexが1からはじまる。

・vbsで使えない

・存在確認、重複チェックがない

・1次配列の代わりに使うとjoinできないのがイラつく


Dictionary

・add時に値の省略ができない

・重複時のエラー回避がめんどくさい

・2次元配列の代わりに使うとExcelセルの格納はできなくてイラつく



なんだか愚痴ばっかりですが、いろいろめんどくさいわけです!!

やりたいことまとめてクラスモジュールにするよと便利だよー

って話に繋がる予定。




ここまで書いて。

ArrayList使えるか調べたことなかったなーと気が付きました。

調べたらあるんですね!!

やっぱクラスモジュールいらないかも←



Office TANAKA - Excel VBA Tips[.NET Frameworkを使う]

プログラミングスキルが >Officeユーザー <プログラマ の人をなんて呼べばいいんだろう

f:id:nazuna_0124:20170403224602p:plain

これ一発で入力できるとちょっとうれしいです。

CreateObject("Scripting.FileSystemObject").OpenTextFile(ThisWorkbook.path & "\test.txt", 8, True).Write ("test" & vbCrLf)

ExcelVBAでブックと同じフォルダのtest.txtに入力するコードです。

テキストファイルがなければ生成します。


覚えとくと便利なので、VBA勉強中の方はタイピング練習がてら是非!



さて、唐突ですがある程度は料理できます。

どのくらいかといいますと

家族の夕食をしばらく作って、たまにおいしいとは言われ、

まずい、またこれか、とは言われない程度のレベルです。

(お買い物からします!)



日々食べる、食べさせる分には支障ありませんが、

料理でプロになるレベルでは当然ないでしょう。



この話が何に繋がるかというと、

まさにプログラミングのスキルレベルが

ほとんど同じというおはなし。



料理は家族の反応はこんなもんでしょうが、

仮に毎日カップラーメンだの菓子パンだの食べる子に

あげたら、喜んでもらえるかと思います。


喜ぶ子を見たら、親は何やってるんだろうと思うわけです。



はい。わたしのプログラムで出来たもので喜ばれるのは

まさにおんなじ感覚なんですねー。


でもこの場合の親って誰???


料理なら主婦(主夫)、親なんて感じで呼び方があります。


システム周りの面倒を見る人、とりあえず日々のものを作る人

に呼称がないのですよね。



名前がないと認識されないので、なかなか広がらないと思ったり。

食事と全く一緒で、一人いるだけで仕事が全然違うのに!!


セミプログラマ、とかセミエンジニアとかでしょうか。

なにかいい呼び方募集!!

VBAでADOというテキストファイルの読み込み方法について

f:id:nazuna_0124:20170312082946p:plain

VBAでテキストファイルを読み込むときです。

普通はFSOかLineなんちゃらを使います。


データ抽出にSQL文を使いたくなったらADO接続の出番です。

SQL知ってれば)抽出や並び替えを簡単に行えます。


また、意外な盲点でしたがデータ内部に

改行コードが含まれてるときにも便利です。


以下のようなデータを想定

[LF]が改行コードだと思って下さい。


“ID”,“名前”,“本文”[LF]

“001”,“なずな”,“こんにちわ。[LF]今日は雨です。”[LF]

“002”,“なずな2”,“こんにちわ2。[LF]今日は雨です2。”[LF]


行の終わりだけではなく、データの中にも

入ってしまっているということですな。



コードはこちら

Sub AdoTxt()
    Dim Con As New ADODB.Connection
    Dim Rs As New ADODB.Recordset
    Dim path As String
    Dim sql
    
    
    path = ThisWorkbook.path & "\"
    Filename = "test.txt"
    
    
    Con = "Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=" _
      & path & ";" _
      & "ReadOnly=0;"
      
    Con.Open
    
    sql = "SELECT * FROM " & Filename
    
    '絞込
    'sql = "select * from " & Filename & " where id = '001'"
 
    Rs.Open sql, Con, adOpenKeyset, adLockPessimistic
    
    Debug.Print Rs.RecordCount
    
    Do Until Rs.EOF
        Debug.Print Rs.Fields(0); Rs.Fields("名前"); Rs.Fields(2)
        Rs.MoveNext
    Loop


End Sub



注意点として以下。


  • Microsoft ActivS Data Object … を参照設定してね

  • 追加はReadOnly=1にすれば可能。更新、削除は不可。

  • 速度自体はあんまり早くない。

  • Rs.Open のとこのおまじないはレコード数の取得に必要

  • エディタで対象テキストを開いているとロックでエラーになる。



こんなかんじです。

Rsのレコードセット取得できれば、イメージとしては

テキストストリームです。



おおむね同じ方法でAccessファイルへも接続できます。

こっちは更新、削除も当然可能です。


同時処理もわりとできるのでExcelの共有ブックに困ったときの

回避手段のひとつです。

これはまたこんど!